@ductape/sdk 0.0.4-v66 → 0.0.4-v68
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/dist/brokers/brokers.service.d.ts +8 -0
- package/dist/brokers/brokers.service.js +104 -29
- package/dist/brokers/brokers.service.js.map +1 -1
- package/dist/brokers/types/index.d.ts +2 -0
- package/dist/cache/cache.manager.d.ts +83 -13
- package/dist/cache/cache.manager.js +243 -48
- package/dist/cache/cache.manager.js.map +1 -1
- package/dist/database/adapters/base.adapter.d.ts +6 -1
- package/dist/database/adapters/base.adapter.js.map +1 -1
- package/dist/database/adapters/cassandra.adapter.d.ts +2 -1
- package/dist/database/adapters/cassandra.adapter.js +16 -0
- package/dist/database/adapters/cassandra.adapter.js.map +1 -1
- package/dist/database/adapters/dynamodb.adapter.d.ts +2 -1
- package/dist/database/adapters/dynamodb.adapter.js +30 -0
- package/dist/database/adapters/dynamodb.adapter.js.map +1 -1
- package/dist/database/adapters/mongodb.adapter.d.ts +2 -1
- package/dist/database/adapters/mongodb.adapter.js +31 -0
- package/dist/database/adapters/mongodb.adapter.js.map +1 -1
- package/dist/database/adapters/mysql.adapter.d.ts +2 -1
- package/dist/database/adapters/mysql.adapter.js +40 -4
- package/dist/database/adapters/mysql.adapter.js.map +1 -1
- package/dist/database/adapters/postgresql.adapter.d.ts +2 -1
- package/dist/database/adapters/postgresql.adapter.js +25 -0
- package/dist/database/adapters/postgresql.adapter.js.map +1 -1
- package/dist/database/databases.service.d.ts +13 -1
- package/dist/database/databases.service.js +93 -29
- package/dist/database/databases.service.js.map +1 -1
- package/dist/database/index.d.ts +1 -1
- package/dist/database/index.js.map +1 -1
- package/dist/database/types/schema.interface.d.ts +15 -1
- package/dist/graph/graphs.service.js +77 -32
- package/dist/graph/graphs.service.js.map +1 -1
- package/dist/index.d.ts +154 -63
- package/dist/index.js +151 -78
- package/dist/index.js.map +1 -1
- package/dist/logs/logs.service.js +6 -1
- package/dist/logs/logs.service.js.map +1 -1
- package/dist/logs/logs.types.d.ts +2 -0
- package/dist/logs/logs.types.js.map +1 -1
- package/dist/notifications/notifications.service.d.ts +8 -0
- package/dist/notifications/notifications.service.js +311 -105
- package/dist/notifications/notifications.service.js.map +1 -1
- package/dist/notifications/types/notifications.types.d.ts +2 -0
- package/dist/products/services/products.service.js +58 -45
- package/dist/products/services/products.service.js.map +1 -1
- package/dist/sessions/sessions.resolver.d.ts +7 -0
- package/dist/sessions/sessions.resolver.js +20 -2
- package/dist/sessions/sessions.resolver.js.map +1 -1
- package/dist/sessions/sessions.service.d.ts +8 -0
- package/dist/sessions/sessions.service.js +231 -44
- package/dist/sessions/sessions.service.js.map +1 -1
- package/dist/sessions/types/index.d.ts +8 -0
- package/dist/storage/storage.service.d.ts +4 -0
- package/dist/storage/storage.service.js +171 -96
- package/dist/storage/storage.service.js.map +1 -1
- package/dist/storage/types/index.d.ts +4 -0
- package/dist/types/processor.types.d.ts +1 -1
- package/dist/vector/vector-database.service.js +38 -14
- package/dist/vector/vector-database.service.js.map +1 -1
- package/dist/workflows/types/workflows.types.d.ts +2 -0
- package/dist/workflows/types/workflows.types.js.map +1 -1
- package/dist/workflows/workflows.service.d.ts +6 -0
- package/dist/workflows/workflows.service.js +125 -21
- package/dist/workflows/workflows.service.js.map +1 -1
- package/package.json +9 -1
|
@@ -60,6 +60,10 @@ export declare class BrokersService {
|
|
|
60
60
|
private productId;
|
|
61
61
|
private productTag;
|
|
62
62
|
private privateKey;
|
|
63
|
+
/** Cache manager for 3-tier caching */
|
|
64
|
+
private cacheManager;
|
|
65
|
+
/** Private keys per product for cache encryption */
|
|
66
|
+
private privateKeys;
|
|
63
67
|
constructor(config: IBrokerServiceConfig);
|
|
64
68
|
/**
|
|
65
69
|
* Get user access credentials
|
|
@@ -73,6 +77,10 @@ export declare class BrokersService {
|
|
|
73
77
|
* Initialize logging service
|
|
74
78
|
*/
|
|
75
79
|
private initializeLogService;
|
|
80
|
+
/**
|
|
81
|
+
* Validate cache tag exists in product and return cache configuration
|
|
82
|
+
*/
|
|
83
|
+
private validateCache;
|
|
76
84
|
/**
|
|
77
85
|
* Get or create broker service instance
|
|
78
86
|
*/
|
|
@@ -20,6 +20,8 @@ const types_2 = require("../types");
|
|
|
20
20
|
const processor_utils_1 = require("../processor/utils/processor.utils");
|
|
21
21
|
const processorApi_service_1 = require("../api/services/processorApi.service");
|
|
22
22
|
const secrets_1 = require("../secrets");
|
|
23
|
+
const cache_manager_1 = require("../cache/cache.manager");
|
|
24
|
+
const sessions_1 = require("../sessions");
|
|
23
25
|
/**
|
|
24
26
|
* Error class for broker operations
|
|
25
27
|
*/
|
|
@@ -74,6 +76,10 @@ class BrokersService {
|
|
|
74
76
|
this.productId = '';
|
|
75
77
|
this.productTag = '';
|
|
76
78
|
this.privateKey = '';
|
|
79
|
+
/** Cache manager for 3-tier caching */
|
|
80
|
+
this.cacheManager = null;
|
|
81
|
+
/** Private keys per product for cache encryption */
|
|
82
|
+
this.privateKeys = new Map();
|
|
77
83
|
this.config = config;
|
|
78
84
|
this.productBuilderService = new products_service_1.default({
|
|
79
85
|
workspace_id: config.workspace_id,
|
|
@@ -81,8 +87,20 @@ class BrokersService {
|
|
|
81
87
|
user_id: config.user_id,
|
|
82
88
|
token: config.token,
|
|
83
89
|
env_type: config.env_type,
|
|
90
|
+
redis_client: config.redis_client,
|
|
84
91
|
});
|
|
85
92
|
this.processorApiService = new processorApi_service_1.ProcessorApiService(config.env_type);
|
|
93
|
+
// Initialize CacheManager if Redis client is provided
|
|
94
|
+
if (config.redis_client) {
|
|
95
|
+
this.cacheManager = new cache_manager_1.CacheManager({
|
|
96
|
+
workspace_id: config.workspace_id,
|
|
97
|
+
public_key: config.public_key,
|
|
98
|
+
user_id: config.user_id,
|
|
99
|
+
token: config.token,
|
|
100
|
+
env_type: config.env_type || '',
|
|
101
|
+
redis_client: config.redis_client,
|
|
102
|
+
});
|
|
103
|
+
}
|
|
86
104
|
}
|
|
87
105
|
/**
|
|
88
106
|
* Get user access credentials
|
|
@@ -159,6 +177,16 @@ class BrokersService {
|
|
|
159
177
|
});
|
|
160
178
|
}
|
|
161
179
|
}
|
|
180
|
+
/**
|
|
181
|
+
* Validate cache tag exists in product and return cache configuration
|
|
182
|
+
*/
|
|
183
|
+
async validateCache(cacheTag) {
|
|
184
|
+
const cache = await this.productBuilderService.fetchCache(cacheTag);
|
|
185
|
+
if (!cache) {
|
|
186
|
+
throw new BrokerError(`Cache configuration '${cacheTag}' does not exist`, 'CACHE_NOT_FOUND');
|
|
187
|
+
}
|
|
188
|
+
return { expiry: cache.expiry };
|
|
189
|
+
}
|
|
162
190
|
/**
|
|
163
191
|
* Get or create broker service instance
|
|
164
192
|
*/
|
|
@@ -218,47 +246,88 @@ class BrokersService {
|
|
|
218
246
|
async publish(options) {
|
|
219
247
|
var _a, _b;
|
|
220
248
|
const process_id = (0, processor_utils_1.generateObjectId)();
|
|
249
|
+
const start = Date.now();
|
|
250
|
+
const { cache } = options;
|
|
251
|
+
let sessionLogFields = {};
|
|
252
|
+
let resolvedMessage = options.message;
|
|
221
253
|
try {
|
|
222
254
|
const { broker, topic, brokerEnv, topicUrl } = await this.initializeBroker(options.product, options.env, options.event);
|
|
223
255
|
const { brokerTag, topicTag } = (0, broker_util_1.parseEventString)(options.event);
|
|
256
|
+
// Store private key for cache operations
|
|
257
|
+
if (this.privateKey) {
|
|
258
|
+
this.privateKeys.set(options.product, this.privateKey);
|
|
259
|
+
}
|
|
260
|
+
// Process session if provided - verify and resolve $Session{} references
|
|
261
|
+
if (options.session && this.privateKey) {
|
|
262
|
+
// Convert session object { tag, token } to string format "tag:token"
|
|
263
|
+
const sessionToken = `${options.session.tag}:${options.session.token}`;
|
|
264
|
+
const sessionResult = await (0, sessions_1.processSessionForExecution)(sessionToken, this.privateKey, { message: options.message }, options.env);
|
|
265
|
+
if (sessionResult.error) {
|
|
266
|
+
throw new BrokerError(`Session validation failed: ${sessionResult.error}`, 'SESSION_INVALID');
|
|
267
|
+
}
|
|
268
|
+
sessionLogFields = sessionResult.logFields;
|
|
269
|
+
resolvedMessage = sessionResult.input.message;
|
|
270
|
+
}
|
|
224
271
|
// Auto-register producer if not exists
|
|
225
272
|
await this.ensureProducerRegistered(brokerTag, topicTag, options.producer);
|
|
226
273
|
this.initializeLogService();
|
|
227
|
-
const baseLogs = {
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
274
|
+
const baseLogs = Object.assign({ product_tag: options.product, product_id: this.productId, workspace_id: this.config.workspace_id, env: options.env, process_id, type: types_2.LogEventTypes.MESSAGEBROKER, parent_tag: brokerTag, child_tag: topicTag, data: { event: options.event } }, sessionLogFields);
|
|
275
|
+
this.logService.add(Object.assign(Object.assign({}, baseLogs), { start, message: 'Publish to broker - initiated', status: types_2.LogEventStatus.PROCESSING }));
|
|
276
|
+
// Check cache for idempotency (prevent duplicate publishes with same data)
|
|
277
|
+
if (cache && this.cacheManager && this.privateKey) {
|
|
278
|
+
const cacheConfig = await this.validateCache(cache);
|
|
279
|
+
const cacheOptions = {
|
|
280
|
+
cache_tag: cache,
|
|
281
|
+
product_tag: options.product,
|
|
282
|
+
component_tag: `${brokerTag}:${topicTag}`,
|
|
283
|
+
component_type: 'broker',
|
|
284
|
+
operation: 'publish',
|
|
285
|
+
input: { event: options.event, message: options.message },
|
|
286
|
+
privateKey: this.privateKey,
|
|
287
|
+
expiry: cacheConfig.expiry,
|
|
288
|
+
};
|
|
289
|
+
const cached = await this.cacheManager.fetch(cacheOptions);
|
|
290
|
+
if (cached.hit && cached.data) {
|
|
291
|
+
const end = Date.now();
|
|
292
|
+
this.logService.add(Object.assign(Object.assign({}, baseLogs), { start,
|
|
293
|
+
end, message: `Publish to broker - cache hit (${cached.source})`, successful_execution: true, status: types_2.LogEventStatus.SUCCESS, data: { event: options.event, cache_source: cached.source } }));
|
|
294
|
+
this.logService.publish();
|
|
295
|
+
return cached.data;
|
|
296
|
+
}
|
|
297
|
+
}
|
|
239
298
|
// Get broker service and publish
|
|
240
299
|
const brokerService = await this.getBrokerService(brokerEnv.type, brokerEnv.config);
|
|
241
|
-
await brokerService.publish(topicUrl,
|
|
242
|
-
|
|
243
|
-
this.logService.publish();
|
|
244
|
-
return {
|
|
300
|
+
await brokerService.publish(topicUrl, resolvedMessage);
|
|
301
|
+
const result = {
|
|
245
302
|
success: true,
|
|
246
303
|
process_id,
|
|
247
304
|
};
|
|
305
|
+
// Store in cache for idempotency
|
|
306
|
+
if (cache && this.cacheManager && this.privateKey) {
|
|
307
|
+
const cacheConfig = await this.validateCache(cache);
|
|
308
|
+
await this.cacheManager.store({
|
|
309
|
+
cache_tag: cache,
|
|
310
|
+
product_tag: options.product,
|
|
311
|
+
component_tag: `${brokerTag}:${topicTag}`,
|
|
312
|
+
component_type: 'broker',
|
|
313
|
+
operation: 'publish',
|
|
314
|
+
input: { event: options.event, message: options.message },
|
|
315
|
+
privateKey: this.privateKey,
|
|
316
|
+
expiry: cacheConfig.expiry,
|
|
317
|
+
}, result);
|
|
318
|
+
}
|
|
319
|
+
const end = Date.now();
|
|
320
|
+
this.logService.add(Object.assign(Object.assign({}, baseLogs), { start,
|
|
321
|
+
end, message: 'Publish to broker - success', successful_execution: true, status: types_2.LogEventStatus.SUCCESS }));
|
|
322
|
+
this.logService.publish();
|
|
323
|
+
return result;
|
|
248
324
|
}
|
|
249
325
|
catch (error) {
|
|
326
|
+
const end = Date.now();
|
|
250
327
|
this.initializeLogService();
|
|
251
|
-
(_a = this.logService) === null || _a === void 0 ? void 0 : _a.add({
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
env: options.env,
|
|
255
|
-
process_id,
|
|
256
|
-
type: types_2.LogEventTypes.MESSAGEBROKER,
|
|
257
|
-
message: 'Publish to broker - failed',
|
|
258
|
-
failed_execution: true,
|
|
259
|
-
data: { event: options.event, error: String(error) },
|
|
260
|
-
status: types_2.LogEventStatus.FAIL,
|
|
261
|
-
});
|
|
328
|
+
(_a = this.logService) === null || _a === void 0 ? void 0 : _a.add(Object.assign({ product_tag: options.product, workspace_id: this.config.workspace_id, env: options.env, process_id,
|
|
329
|
+
start,
|
|
330
|
+
end, type: types_2.LogEventTypes.MESSAGEBROKER, message: 'Publish to broker - failed', failed_execution: true, data: { event: options.event, error: String(error) }, status: types_2.LogEventStatus.FAIL }, sessionLogFields));
|
|
262
331
|
await ((_b = this.logService) === null || _b === void 0 ? void 0 : _b.publish());
|
|
263
332
|
if (error instanceof BrokerError) {
|
|
264
333
|
throw error;
|
|
@@ -272,6 +341,7 @@ class BrokersService {
|
|
|
272
341
|
async subscribe(options) {
|
|
273
342
|
var _a, _b;
|
|
274
343
|
const process_id = (0, processor_utils_1.generateObjectId)();
|
|
344
|
+
const start = Date.now();
|
|
275
345
|
try {
|
|
276
346
|
const { broker, topic, brokerEnv, topicUrl } = await this.initializeBroker(options.product, options.env, options.event);
|
|
277
347
|
const { brokerTag, topicTag } = (0, broker_util_1.parseEventString)(options.event);
|
|
@@ -289,11 +359,13 @@ class BrokersService {
|
|
|
289
359
|
child_tag: topicTag,
|
|
290
360
|
data: { event: options.event },
|
|
291
361
|
};
|
|
292
|
-
this.logService.add(Object.assign(Object.assign({}, baseLogs), { message: 'Subscribe to broker - initiated', status: types_2.LogEventStatus.PROCESSING }));
|
|
362
|
+
this.logService.add(Object.assign(Object.assign({}, baseLogs), { start, message: 'Subscribe to broker - initiated', status: types_2.LogEventStatus.PROCESSING }));
|
|
293
363
|
// Get broker service and subscribe
|
|
294
364
|
const brokerService = await this.getBrokerService(brokerEnv.type, brokerEnv.config);
|
|
295
365
|
await brokerService.subscribe(topicUrl, options.callback);
|
|
296
|
-
|
|
366
|
+
const end = Date.now();
|
|
367
|
+
this.logService.add(Object.assign(Object.assign({}, baseLogs), { start,
|
|
368
|
+
end, message: 'Subscribe to broker - success', successful_execution: true, status: types_2.LogEventStatus.SUCCESS }));
|
|
297
369
|
this.logService.publish();
|
|
298
370
|
return {
|
|
299
371
|
success: true,
|
|
@@ -301,12 +373,15 @@ class BrokersService {
|
|
|
301
373
|
};
|
|
302
374
|
}
|
|
303
375
|
catch (error) {
|
|
376
|
+
const end = Date.now();
|
|
304
377
|
this.initializeLogService();
|
|
305
378
|
(_a = this.logService) === null || _a === void 0 ? void 0 : _a.add({
|
|
306
379
|
product_tag: options.product,
|
|
307
380
|
workspace_id: this.config.workspace_id,
|
|
308
381
|
env: options.env,
|
|
309
382
|
process_id,
|
|
383
|
+
start,
|
|
384
|
+
end,
|
|
310
385
|
type: types_2.LogEventTypes.MESSAGEBROKER,
|
|
311
386
|
message: 'Subscribe to broker - failed',
|
|
312
387
|
failed_execution: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brokers.service.js","sourceRoot":"","sources":["../../src/brokers/brokers.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"brokers.service.js","sourceRoot":"","sources":["../../src/brokers/brokers.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,26 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* CacheManager - Shared caching utility for all executor services
|
|
3
3
|
*
|
|
4
|
-
* Provides a
|
|
5
|
-
* -
|
|
4
|
+
* Provides a three-tier caching strategy:
|
|
5
|
+
* - Internal (in-memory): Fastest layer using Map with LRU eviction
|
|
6
|
+
* - Redis (local/fast): Secondary cache layer for distributed reads
|
|
6
7
|
* - Remote (persistent): Backing store synced on writes/deletes/cache misses
|
|
7
8
|
*
|
|
8
9
|
* Used by: StorageService, DatabaseService, GraphService, VectorService,
|
|
9
|
-
* QuotaService, FallbackService, AgentsService,
|
|
10
|
+
* QuotaService, FallbackService, AgentsService, SessionsService, BrokersService,
|
|
11
|
+
* NotificationsService, etc.
|
|
10
12
|
*/
|
|
11
13
|
import { RedisClientType } from 'redis';
|
|
12
14
|
import { EnvType } from '../types';
|
|
15
|
+
/**
|
|
16
|
+
* Cache value wrapper with type information for auto-detection
|
|
17
|
+
*/
|
|
18
|
+
export interface ICacheValueWrapper {
|
|
19
|
+
/** Type of the cached value */
|
|
20
|
+
type: 'json' | 'string';
|
|
21
|
+
/** Serialized value */
|
|
22
|
+
value: string;
|
|
23
|
+
}
|
|
13
24
|
/**
|
|
14
25
|
* Cache manager configuration
|
|
15
26
|
*/
|
|
@@ -21,6 +32,10 @@ export interface ICacheManagerConfig {
|
|
|
21
32
|
env_type: EnvType | string;
|
|
22
33
|
redis_client?: RedisClientType;
|
|
23
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* Component types for cache operations
|
|
37
|
+
*/
|
|
38
|
+
export type CacheComponentType = 'storage' | 'database' | 'graph' | 'vector' | 'session' | 'broker' | 'notification';
|
|
24
39
|
/**
|
|
25
40
|
* Options for cache operations
|
|
26
41
|
*/
|
|
@@ -29,10 +44,12 @@ export interface ICacheOperationOptions {
|
|
|
29
44
|
cache_tag: string;
|
|
30
45
|
/** Product tag */
|
|
31
46
|
product_tag: string;
|
|
32
|
-
/** Component tag (e.g., storage tag, database tag) */
|
|
47
|
+
/** Component tag (e.g., storage tag, database tag, session tag) */
|
|
33
48
|
component_tag: string;
|
|
34
|
-
/** Component type
|
|
35
|
-
component_type: string;
|
|
49
|
+
/** Component type for reporting and key generation */
|
|
50
|
+
component_type: CacheComponentType | string;
|
|
51
|
+
/** Operation name for key generation (e.g., 'create', 'verify', 'publish') */
|
|
52
|
+
operation?: string;
|
|
36
53
|
/** Input data to generate cache key from */
|
|
37
54
|
input: unknown;
|
|
38
55
|
/** Private key for encryption/decryption */
|
|
@@ -50,8 +67,8 @@ export interface ICacheFetchResult<T> {
|
|
|
50
67
|
data?: T;
|
|
51
68
|
/** Cache key used */
|
|
52
69
|
key: string;
|
|
53
|
-
/** Source of data: 'redis', 'remote', or 'miss' */
|
|
54
|
-
source: 'redis' | 'remote' | 'miss';
|
|
70
|
+
/** Source of data: 'internal', 'redis', 'remote', or 'miss' */
|
|
71
|
+
source: 'internal' | 'redis' | 'remote' | 'miss';
|
|
55
72
|
}
|
|
56
73
|
/**
|
|
57
74
|
* CacheManager provides shared caching functionality for all executor services
|
|
@@ -101,33 +118,79 @@ export declare class CacheManager {
|
|
|
101
118
|
private config;
|
|
102
119
|
private redisClient;
|
|
103
120
|
private processorApiService;
|
|
121
|
+
/** Internal in-memory cache (Tier 1 - fastest) */
|
|
122
|
+
private internalCache;
|
|
123
|
+
/** Maximum number of entries in internal cache before LRU eviction */
|
|
124
|
+
private maxInternalCacheSize;
|
|
104
125
|
constructor(config: ICacheManagerConfig);
|
|
126
|
+
/**
|
|
127
|
+
* Set maximum size for internal cache
|
|
128
|
+
*/
|
|
129
|
+
setMaxInternalCacheSize(size: number): void;
|
|
130
|
+
/**
|
|
131
|
+
* Clear internal cache
|
|
132
|
+
*/
|
|
133
|
+
clearInternalCache(): void;
|
|
134
|
+
/**
|
|
135
|
+
* Set entry in internal cache with LRU eviction
|
|
136
|
+
*/
|
|
137
|
+
private setInternalCache;
|
|
138
|
+
/**
|
|
139
|
+
* Check if internal cache entry is still valid
|
|
140
|
+
*/
|
|
141
|
+
private isValidEntry;
|
|
142
|
+
/**
|
|
143
|
+
* Wrap value with type information for storage (auto-detect type)
|
|
144
|
+
*/
|
|
145
|
+
private wrapValue;
|
|
146
|
+
/**
|
|
147
|
+
* Unwrap value based on stored type
|
|
148
|
+
*/
|
|
149
|
+
private unwrapValue;
|
|
105
150
|
/**
|
|
106
151
|
* Get user access credentials for API calls
|
|
107
152
|
*/
|
|
108
153
|
private getUserAccess;
|
|
109
154
|
/**
|
|
110
|
-
* Generate cache key from cache tag and input
|
|
155
|
+
* Generate cache key from cache tag and input (legacy format)
|
|
111
156
|
*/
|
|
112
157
|
generateKey(cache_tag: string, input: unknown): string;
|
|
158
|
+
/**
|
|
159
|
+
* Generate cache key with new format: cache_tag:component_type:operation:sha256(input)
|
|
160
|
+
* Includes cache_tag for isolation between different cache configurations
|
|
161
|
+
*/
|
|
162
|
+
generateKeyV2(options: {
|
|
163
|
+
cache_tag: string;
|
|
164
|
+
component_type: string;
|
|
165
|
+
operation: string;
|
|
166
|
+
input: unknown;
|
|
167
|
+
}): string;
|
|
168
|
+
/**
|
|
169
|
+
* Generate cache key based on options (uses V2 format if operation provided)
|
|
170
|
+
*/
|
|
171
|
+
private generateCacheKey;
|
|
113
172
|
/**
|
|
114
173
|
* Check if caching is available (Redis client connected)
|
|
115
174
|
*/
|
|
116
175
|
isAvailable(): boolean;
|
|
117
176
|
/**
|
|
118
|
-
* Fetch data from cache (
|
|
177
|
+
* Fetch data from cache (Internal first, then Redis, then remote on miss)
|
|
119
178
|
*
|
|
120
179
|
* @returns Cache result with hit status, data, and source
|
|
121
180
|
*/
|
|
122
181
|
fetch<T>(options: ICacheOperationOptions): Promise<ICacheFetchResult<T>>;
|
|
123
182
|
/**
|
|
124
|
-
* Store data in cache (
|
|
183
|
+
* Store data in cache (all three tiers: internal, Redis, and remote)
|
|
125
184
|
*/
|
|
126
185
|
store<T>(options: ICacheOperationOptions, data: T): Promise<void>;
|
|
127
186
|
/**
|
|
128
|
-
* Invalidate/delete data from cache (
|
|
187
|
+
* Invalidate/delete data from cache (all three tiers)
|
|
129
188
|
*/
|
|
130
189
|
invalidate(cache_tag: string, input: unknown): Promise<void>;
|
|
190
|
+
/**
|
|
191
|
+
* Invalidate/delete data from cache using options (supports new key format)
|
|
192
|
+
*/
|
|
193
|
+
invalidateV2(options: ICacheOperationOptions): Promise<void>;
|
|
131
194
|
/**
|
|
132
195
|
* Helper method to wrap an async operation with caching
|
|
133
196
|
*
|
|
@@ -153,7 +216,14 @@ export declare class CacheManager {
|
|
|
153
216
|
withCache<T>(options: ICacheOperationOptions, operation: () => Promise<T>): Promise<{
|
|
154
217
|
data: T;
|
|
155
218
|
cached: boolean;
|
|
156
|
-
source: 'redis' | 'remote' | 'fresh';
|
|
219
|
+
source: 'internal' | 'redis' | 'remote' | 'fresh';
|
|
157
220
|
}>;
|
|
221
|
+
/**
|
|
222
|
+
* Get internal cache stats for debugging/monitoring
|
|
223
|
+
*/
|
|
224
|
+
getInternalCacheStats(): {
|
|
225
|
+
size: number;
|
|
226
|
+
maxSize: number;
|
|
227
|
+
};
|
|
158
228
|
}
|
|
159
229
|
export default CacheManager;
|