@breadstone/archipel-mcp 0.0.7 → 0.0.8
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/data/packages/index.md +13 -6
- package/data/packages/platform-authentication/api/Class.AppleStrategy.md +1 -1
- package/data/packages/platform-authentication/api/Class.AuthModule.md +3 -3
- package/data/packages/platform-authentication/api/Class.GithubStrategy.md +1 -1
- package/data/packages/platform-authentication/api/Class.GoogleStrategy.md +1 -1
- package/data/packages/platform-authentication/api/Class.MicrosoftStrategy.md +1 -1
- package/data/packages/platform-authentication/api/Interface.IAuthModuleOptions.md +9 -9
- package/data/packages/{platform-core → platform-caching}/api/Class.MemoryLayeredCache.md +41 -33
- package/data/packages/platform-caching/api/Class.NoopCacheMetricsRecorder.md +158 -0
- package/data/packages/platform-caching/api/Class.RedisLayeredCache.md +296 -0
- package/data/packages/platform-caching/api/Interface.ICacheMetricsRecorder.md +122 -0
- package/data/packages/platform-caching/api/Interface.ICacheStats.md +71 -0
- package/data/packages/platform-caching/api/Interface.ILayeredCache.md +199 -0
- package/data/packages/platform-caching/api/Interface.ILayeredCacheOptions.md +76 -0
- package/data/packages/platform-caching/api/Interface.IRedisLayeredCacheOptions.md +122 -0
- package/data/packages/platform-caching/api/index.md +25 -0
- package/data/packages/platform-caching/index.md +116 -0
- package/data/packages/platform-core/api/index.md +104 -150
- package/data/packages/platform-core/index.md +5 -3
- package/data/packages/platform-cryptography/api/Class.BcryptService.md +73 -0
- package/data/packages/platform-cryptography/api/Class.CryptoService.md +52 -0
- package/data/packages/{platform-core → platform-cryptography}/api/Class.OtpService.md +8 -4
- package/data/packages/{platform-core → platform-cryptography}/api/Interface.IOtpService.md +8 -4
- package/data/packages/platform-cryptography/api/Interface.IOtpUriOptions.md +47 -0
- package/data/packages/{platform-core → platform-cryptography}/api/Variable.OTP_SERVICE_TOKEN.md +1 -1
- package/data/packages/{platform-core → platform-cryptography}/api/Variable.TOTP_EPOCH_TOLERANCE.md +1 -1
- package/data/packages/platform-cryptography/api/index.md +29 -0
- package/data/packages/platform-cryptography/index.md +132 -0
- package/data/packages/{platform-core → platform-intelligence}/api/Class.IntelligenceCapabilityRegistrarBase.md +7 -5
- package/data/packages/{platform-core → platform-intelligence}/api/Class.IntelligenceCapabilityRegistry.md +19 -15
- package/data/packages/{platform-core → platform-intelligence}/api/Class.IntelligenceModule.md +1 -1
- package/data/packages/{platform-core → platform-intelligence}/api/Class.IntelligenceTextGenerator.md +7 -7
- package/data/packages/platform-intelligence/api/Function.createProviderOptions.md +27 -0
- package/data/packages/platform-intelligence/api/Function.loadAnthropicLanguageModel.md +27 -0
- package/data/packages/platform-intelligence/api/Function.loadGoogleLanguageModel.md +27 -0
- package/data/packages/platform-intelligence/api/Function.loadGrokLanguageModel.md +27 -0
- package/data/packages/platform-intelligence/api/Function.loadOpenAILanguageModel.md +27 -0
- package/data/packages/platform-intelligence/api/Function.loadProviderFactory.md +32 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceArtifact.md +35 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceCapability.md +72 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceCapabilityMetadata.md +71 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceCapabilityPayload.md +47 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceCapabilityRegistry.md +79 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceCapabilityResult.md +47 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceCompletionUsage.md +47 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceContext.md +73 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceContextBuilder.md +36 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceConversationMessageSnapshot.md +71 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceConversationSnapshot.md +59 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceFollowUpQuestion.md +47 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceIntent.md +47 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceIntentEntity.md +35 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceMessageModel.md +71 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceMessagePayload.md +35 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligencePrompt.md +35 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligencePromptMessage.md +35 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceProviderConfiguration.md +95 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceResponseMessage.md +35 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceTextCompletion.md +61 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceTextGenerationOptions.md +47 -0
- package/data/packages/platform-intelligence/api/Interface.IIntelligenceTextGenerator.md +54 -0
- package/data/packages/{platform-core → platform-intelligence}/api/TypeAlias.IntelligenceConversationMessageRole.md +1 -1
- package/data/packages/platform-intelligence/api/TypeAlias.IntelligenceLanguageModelLoader.md +25 -0
- package/data/packages/{platform-core → platform-intelligence}/api/TypeAlias.IntelligenceProviderName.md +1 -1
- package/data/packages/{platform-core → platform-intelligence}/api/Variable.IntelligenceConversationMessageRoles.md +6 -6
- package/data/packages/platform-intelligence/api/Variable.IntelligenceProviderNames.md +29 -0
- package/data/packages/platform-intelligence/api/index.md +70 -0
- package/data/packages/platform-intelligence/index.md +131 -0
- package/data/packages/platform-telemetry/api/Class.TelemetryCacheMetricsRecorder.md +15 -15
- package/package.json +1 -1
- package/data/packages/platform-core/api/Class.BcryptService.md +0 -69
- package/data/packages/platform-core/api/Class.CryptoService.md +0 -50
- package/data/packages/platform-core/api/Class.NoopCacheMetricsRecorder.md +0 -157
- package/data/packages/platform-core/api/Class.RedisLayeredCache.md +0 -275
- package/data/packages/platform-core/api/Interface.ICacheMetricsRecorder.md +0 -121
- package/data/packages/platform-core/api/Interface.ICacheStats.md +0 -71
- package/data/packages/platform-core/api/Interface.IIntelligenceArtifact.md +0 -31
- package/data/packages/platform-core/api/Interface.IIntelligenceCapability.md +0 -62
- package/data/packages/platform-core/api/Interface.IIntelligenceCapabilityMetadata.md +0 -61
- package/data/packages/platform-core/api/Interface.IIntelligenceCapabilityPayload.md +0 -41
- package/data/packages/platform-core/api/Interface.IIntelligenceCapabilityRegistry.md +0 -69
- package/data/packages/platform-core/api/Interface.IIntelligenceCapabilityResult.md +0 -41
- package/data/packages/platform-core/api/Interface.IIntelligenceCompletionUsage.md +0 -41
- package/data/packages/platform-core/api/Interface.IIntelligenceContext.md +0 -63
- package/data/packages/platform-core/api/Interface.IIntelligenceContextBuilder.md +0 -32
- package/data/packages/platform-core/api/Interface.IIntelligenceConversationMessageSnapshot.md +0 -61
- package/data/packages/platform-core/api/Interface.IIntelligenceConversationSnapshot.md +0 -51
- package/data/packages/platform-core/api/Interface.IIntelligenceFollowUpQuestion.md +0 -41
- package/data/packages/platform-core/api/Interface.IIntelligenceIntent.md +0 -41
- package/data/packages/platform-core/api/Interface.IIntelligenceIntentEntity.md +0 -31
- package/data/packages/platform-core/api/Interface.IIntelligenceMessageModel.md +0 -61
- package/data/packages/platform-core/api/Interface.IIntelligenceMessagePayload.md +0 -31
- package/data/packages/platform-core/api/Interface.IIntelligencePrompt.md +0 -31
- package/data/packages/platform-core/api/Interface.IIntelligencePromptMessage.md +0 -31
- package/data/packages/platform-core/api/Interface.IIntelligenceProviderConfiguration.md +0 -81
- package/data/packages/platform-core/api/Interface.IIntelligenceResponseMessage.md +0 -31
- package/data/packages/platform-core/api/Interface.IIntelligenceTextCompletion.md +0 -53
- package/data/packages/platform-core/api/Interface.IIntelligenceTextGenerationOptions.md +0 -41
- package/data/packages/platform-core/api/Interface.IIntelligenceTextGenerator.md +0 -46
- package/data/packages/platform-core/api/Interface.ILayeredCache.md +0 -194
- package/data/packages/platform-core/api/Interface.ILayeredCacheOptions.md +0 -71
- package/data/packages/platform-core/api/Interface.IOtpUriOptions.md +0 -47
- package/data/packages/platform-core/api/Interface.IRedisLayeredCacheOptions.md +0 -108
- package/data/packages/platform-core/api/Variable.IntelligenceProviderNames.md +0 -29
|
@@ -0,0 +1,296 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: 'Class: RedisLayeredCache\<TKey, TValue\>'
|
|
3
|
+
generated: true
|
|
4
|
+
editUrl: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Class: RedisLayeredCache\<TKey, TValue\>
|
|
8
|
+
|
|
9
|
+
Defined in: [redis/RedisLayeredCache.ts:84](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L84)
|
|
10
|
+
|
|
11
|
+
Redis-backed layered cache implementation. Falls back to an asynchronous
|
|
12
|
+
loader function when the requested key is not present in Redis.
|
|
13
|
+
|
|
14
|
+
## Remarks
|
|
15
|
+
|
|
16
|
+
Synchronous methods (`get`, `set`, `invalidate`) throw because Redis
|
|
17
|
+
is inherently asynchronous. Use the `*Async` variants instead.
|
|
18
|
+
|
|
19
|
+
## Type Parameters
|
|
20
|
+
|
|
21
|
+
| Type Parameter | Description |
|
|
22
|
+
| -------------- | ----------------------------- |
|
|
23
|
+
| `TKey` | The type of the cache keys. |
|
|
24
|
+
| `TValue` | The type of the cache values. |
|
|
25
|
+
|
|
26
|
+
## Implements
|
|
27
|
+
|
|
28
|
+
- [`ILayeredCache`](Interface.ILayeredCache)\<`TKey`, `TValue`\>
|
|
29
|
+
- `OnModuleDestroy`
|
|
30
|
+
|
|
31
|
+
## Constructors
|
|
32
|
+
|
|
33
|
+
### Constructor
|
|
34
|
+
|
|
35
|
+
```ts
|
|
36
|
+
new RedisLayeredCache<TKey, TValue>(loadFn, options): RedisLayeredCache<TKey, TValue>;
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Defined in: [redis/RedisLayeredCache.ts:109](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L109)
|
|
40
|
+
|
|
41
|
+
Initializes a new instance of the RedisLayeredCache class.
|
|
42
|
+
|
|
43
|
+
#### Parameters
|
|
44
|
+
|
|
45
|
+
| Parameter | Type | Description |
|
|
46
|
+
| --------- | ------------------------------------------------------------------------------ | --------------------------------------------------- |
|
|
47
|
+
| `loadFn` | (`key`) => `Promise`\<`TValue` \| `undefined`\> | Async loader invoked on cache misses. |
|
|
48
|
+
| `options` | [`IRedisLayeredCacheOptions`](Interface.IRedisLayeredCacheOptions)\<`TValue`\> | Redis connection and cache behaviour configuration. |
|
|
49
|
+
|
|
50
|
+
#### Returns
|
|
51
|
+
|
|
52
|
+
`RedisLayeredCache`\<`TKey`, `TValue`\>
|
|
53
|
+
|
|
54
|
+
## Methods
|
|
55
|
+
|
|
56
|
+
### get()
|
|
57
|
+
|
|
58
|
+
```ts
|
|
59
|
+
get(key): TValue | undefined;
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Defined in: [redis/RedisLayeredCache.ts:126](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L126)
|
|
63
|
+
|
|
64
|
+
Not supported — Redis is inherently asynchronous.
|
|
65
|
+
|
|
66
|
+
#### Parameters
|
|
67
|
+
|
|
68
|
+
| Parameter | Type |
|
|
69
|
+
| --------- | ------ |
|
|
70
|
+
| `key` | `TKey` |
|
|
71
|
+
|
|
72
|
+
#### Returns
|
|
73
|
+
|
|
74
|
+
`TValue` \| `undefined`
|
|
75
|
+
|
|
76
|
+
#### Throws
|
|
77
|
+
|
|
78
|
+
Always throws. Use [getAsync](#getasync) instead.
|
|
79
|
+
|
|
80
|
+
#### Implementation of
|
|
81
|
+
|
|
82
|
+
[`ILayeredCache`](Interface.ILayeredCache).[`get`](Interface.ILayeredCache#get)
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
### getAsync()
|
|
87
|
+
|
|
88
|
+
```ts
|
|
89
|
+
getAsync(key): Promise<TValue | undefined>;
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
Defined in: [redis/RedisLayeredCache.ts:131](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L131)
|
|
93
|
+
|
|
94
|
+
Retrieves a value from the cache asynchronously.
|
|
95
|
+
|
|
96
|
+
#### Parameters
|
|
97
|
+
|
|
98
|
+
| Parameter | Type | Description |
|
|
99
|
+
| --------- | ------ | -------------------- |
|
|
100
|
+
| `key` | `TKey` | The key to retrieve. |
|
|
101
|
+
|
|
102
|
+
#### Returns
|
|
103
|
+
|
|
104
|
+
`Promise`\<`TValue` \| `undefined`\>
|
|
105
|
+
|
|
106
|
+
A promise resolving to the cached value or `undefined` on a miss.
|
|
107
|
+
|
|
108
|
+
#### Implementation of
|
|
109
|
+
|
|
110
|
+
[`ILayeredCache`](Interface.ILayeredCache).[`getAsync`](Interface.ILayeredCache#getasync)
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
### invalidate()
|
|
115
|
+
|
|
116
|
+
```ts
|
|
117
|
+
invalidate(key): void;
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Defined in: [redis/RedisLayeredCache.ts:188](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L188)
|
|
121
|
+
|
|
122
|
+
Not supported — Redis is inherently asynchronous.
|
|
123
|
+
|
|
124
|
+
#### Parameters
|
|
125
|
+
|
|
126
|
+
| Parameter | Type |
|
|
127
|
+
| --------- | ------ |
|
|
128
|
+
| `key` | `TKey` |
|
|
129
|
+
|
|
130
|
+
#### Returns
|
|
131
|
+
|
|
132
|
+
`void`
|
|
133
|
+
|
|
134
|
+
#### Throws
|
|
135
|
+
|
|
136
|
+
Always throws. Use [invalidateAsync](#invalidateasync) instead.
|
|
137
|
+
|
|
138
|
+
#### Implementation of
|
|
139
|
+
|
|
140
|
+
[`ILayeredCache`](Interface.ILayeredCache).[`invalidate`](Interface.ILayeredCache#invalidate)
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
### invalidateAsync()
|
|
145
|
+
|
|
146
|
+
```ts
|
|
147
|
+
invalidateAsync(key): Promise<void>;
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
Defined in: [redis/RedisLayeredCache.ts:193](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L193)
|
|
151
|
+
|
|
152
|
+
Invalidates a key in the cache asynchronously.
|
|
153
|
+
|
|
154
|
+
#### Parameters
|
|
155
|
+
|
|
156
|
+
| Parameter | Type | Description |
|
|
157
|
+
| --------- | ------ | ---------------------- |
|
|
158
|
+
| `key` | `TKey` | The key to invalidate. |
|
|
159
|
+
|
|
160
|
+
#### Returns
|
|
161
|
+
|
|
162
|
+
`Promise`\<`void`\>
|
|
163
|
+
|
|
164
|
+
#### Implementation of
|
|
165
|
+
|
|
166
|
+
[`ILayeredCache`](Interface.ILayeredCache).[`invalidateAsync`](Interface.ILayeredCache#invalidateasync)
|
|
167
|
+
|
|
168
|
+
---
|
|
169
|
+
|
|
170
|
+
### onModuleDestroy()
|
|
171
|
+
|
|
172
|
+
```ts
|
|
173
|
+
onModuleDestroy(): Promise<void>;
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
Defined in: [redis/RedisLayeredCache.ts:214](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L214)
|
|
177
|
+
|
|
178
|
+
Gracefully disconnects the Redis client when the NestJS module is destroyed.
|
|
179
|
+
|
|
180
|
+
#### Returns
|
|
181
|
+
|
|
182
|
+
`Promise`\<`void`\>
|
|
183
|
+
|
|
184
|
+
#### Implementation of
|
|
185
|
+
|
|
186
|
+
```ts
|
|
187
|
+
OnModuleDestroy.onModuleDestroy;
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
### set()
|
|
193
|
+
|
|
194
|
+
```ts
|
|
195
|
+
set(key, value): void;
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
Defined in: [redis/RedisLayeredCache.ts:162](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L162)
|
|
199
|
+
|
|
200
|
+
Not supported — Redis is inherently asynchronous.
|
|
201
|
+
|
|
202
|
+
#### Parameters
|
|
203
|
+
|
|
204
|
+
| Parameter | Type |
|
|
205
|
+
| --------- | -------- |
|
|
206
|
+
| `key` | `TKey` |
|
|
207
|
+
| `value` | `TValue` |
|
|
208
|
+
|
|
209
|
+
#### Returns
|
|
210
|
+
|
|
211
|
+
`void`
|
|
212
|
+
|
|
213
|
+
#### Throws
|
|
214
|
+
|
|
215
|
+
Always throws. Use [setAsync](#setasync) instead.
|
|
216
|
+
|
|
217
|
+
#### Implementation of
|
|
218
|
+
|
|
219
|
+
[`ILayeredCache`](Interface.ILayeredCache).[`set`](Interface.ILayeredCache#set)
|
|
220
|
+
|
|
221
|
+
---
|
|
222
|
+
|
|
223
|
+
### setAsync()
|
|
224
|
+
|
|
225
|
+
```ts
|
|
226
|
+
setAsync(key, value): Promise<void>;
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
Defined in: [redis/RedisLayeredCache.ts:167](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L167)
|
|
230
|
+
|
|
231
|
+
Stores a value in the cache asynchronously.
|
|
232
|
+
|
|
233
|
+
#### Parameters
|
|
234
|
+
|
|
235
|
+
| Parameter | Type | Description |
|
|
236
|
+
| --------- | -------- | ------------------- |
|
|
237
|
+
| `key` | `TKey` | The key to store. |
|
|
238
|
+
| `value` | `TValue` | The value to store. |
|
|
239
|
+
|
|
240
|
+
#### Returns
|
|
241
|
+
|
|
242
|
+
`Promise`\<`void`\>
|
|
243
|
+
|
|
244
|
+
#### Implementation of
|
|
245
|
+
|
|
246
|
+
[`ILayeredCache`](Interface.ILayeredCache).[`setAsync`](Interface.ILayeredCache#setasync)
|
|
247
|
+
|
|
248
|
+
---
|
|
249
|
+
|
|
250
|
+
### stats()
|
|
251
|
+
|
|
252
|
+
```ts
|
|
253
|
+
stats(): ICacheStats;
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
Defined in: [redis/RedisLayeredCache.ts:202](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L202)
|
|
257
|
+
|
|
258
|
+
Returns current cache statistics.
|
|
259
|
+
|
|
260
|
+
#### Returns
|
|
261
|
+
|
|
262
|
+
[`ICacheStats`](Interface.ICacheStats)
|
|
263
|
+
|
|
264
|
+
The cache statistics snapshot.
|
|
265
|
+
|
|
266
|
+
#### Implementation of
|
|
267
|
+
|
|
268
|
+
[`ILayeredCache`](Interface.ILayeredCache).[`stats`](Interface.ILayeredCache#stats)
|
|
269
|
+
|
|
270
|
+
---
|
|
271
|
+
|
|
272
|
+
### warm()
|
|
273
|
+
|
|
274
|
+
```ts
|
|
275
|
+
warm(key): Promise<TValue | undefined>;
|
|
276
|
+
```
|
|
277
|
+
|
|
278
|
+
Defined in: [redis/RedisLayeredCache.ts:179](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L179)
|
|
279
|
+
|
|
280
|
+
Proactively warms the cache for a given key.
|
|
281
|
+
|
|
282
|
+
#### Parameters
|
|
283
|
+
|
|
284
|
+
| Parameter | Type | Description |
|
|
285
|
+
| --------- | ------ | ---------------- |
|
|
286
|
+
| `key` | `TKey` | The key to warm. |
|
|
287
|
+
|
|
288
|
+
#### Returns
|
|
289
|
+
|
|
290
|
+
`Promise`\<`TValue` \| `undefined`\>
|
|
291
|
+
|
|
292
|
+
The value that was loaded and cached, or `undefined` if not found.
|
|
293
|
+
|
|
294
|
+
#### Implementation of
|
|
295
|
+
|
|
296
|
+
[`ILayeredCache`](Interface.ILayeredCache).[`warm`](Interface.ILayeredCache#warm)
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: 'Interface: ICacheMetricsRecorder'
|
|
3
|
+
generated: true
|
|
4
|
+
editUrl: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Interface: ICacheMetricsRecorder
|
|
8
|
+
|
|
9
|
+
Defined in: [ICacheMetricsRecorder.ts:7](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ICacheMetricsRecorder.ts#L7)
|
|
10
|
+
|
|
11
|
+
Metrics recorder for cache operations. Implementations can forward
|
|
12
|
+
measurements to Prometheus, OpenTelemetry, or any other backend.
|
|
13
|
+
|
|
14
|
+
## Methods
|
|
15
|
+
|
|
16
|
+
### recordEviction()?
|
|
17
|
+
|
|
18
|
+
```ts
|
|
19
|
+
optional recordEviction(cache): void;
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Defined in: [ICacheMetricsRecorder.ts:49](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ICacheMetricsRecorder.ts#L49)
|
|
23
|
+
|
|
24
|
+
Records a cache eviction.
|
|
25
|
+
|
|
26
|
+
#### Parameters
|
|
27
|
+
|
|
28
|
+
| Parameter | Type | Description |
|
|
29
|
+
| --------- | -------- | ----------------------- |
|
|
30
|
+
| `cache` | `string` | The cache name / label. |
|
|
31
|
+
|
|
32
|
+
#### Returns
|
|
33
|
+
|
|
34
|
+
`void`
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
### recordHit()
|
|
39
|
+
|
|
40
|
+
```ts
|
|
41
|
+
recordHit(cache): void;
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Defined in: [ICacheMetricsRecorder.ts:17](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ICacheMetricsRecorder.ts#L17)
|
|
45
|
+
|
|
46
|
+
Records a cache hit.
|
|
47
|
+
|
|
48
|
+
#### Parameters
|
|
49
|
+
|
|
50
|
+
| Parameter | Type | Description |
|
|
51
|
+
| --------- | -------- | ----------------------- |
|
|
52
|
+
| `cache` | `string` | The cache name / label. |
|
|
53
|
+
|
|
54
|
+
#### Returns
|
|
55
|
+
|
|
56
|
+
`void`
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
### recordLoadError()
|
|
61
|
+
|
|
62
|
+
```ts
|
|
63
|
+
recordLoadError(cache): void;
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Defined in: [ICacheMetricsRecorder.ts:41](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ICacheMetricsRecorder.ts#L41)
|
|
67
|
+
|
|
68
|
+
Records a failed cache load.
|
|
69
|
+
|
|
70
|
+
#### Parameters
|
|
71
|
+
|
|
72
|
+
| Parameter | Type | Description |
|
|
73
|
+
| --------- | -------- | ----------------------- |
|
|
74
|
+
| `cache` | `string` | The cache name / label. |
|
|
75
|
+
|
|
76
|
+
#### Returns
|
|
77
|
+
|
|
78
|
+
`void`
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
### recordLoadSuccess()
|
|
83
|
+
|
|
84
|
+
```ts
|
|
85
|
+
recordLoadSuccess(cache): void;
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
Defined in: [ICacheMetricsRecorder.ts:33](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ICacheMetricsRecorder.ts#L33)
|
|
89
|
+
|
|
90
|
+
Records a successful cache load.
|
|
91
|
+
|
|
92
|
+
#### Parameters
|
|
93
|
+
|
|
94
|
+
| Parameter | Type | Description |
|
|
95
|
+
| --------- | -------- | ----------------------- |
|
|
96
|
+
| `cache` | `string` | The cache name / label. |
|
|
97
|
+
|
|
98
|
+
#### Returns
|
|
99
|
+
|
|
100
|
+
`void`
|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
### recordMiss()
|
|
105
|
+
|
|
106
|
+
```ts
|
|
107
|
+
recordMiss(cache): void;
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
Defined in: [ICacheMetricsRecorder.ts:25](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ICacheMetricsRecorder.ts#L25)
|
|
111
|
+
|
|
112
|
+
Records a cache miss.
|
|
113
|
+
|
|
114
|
+
#### Parameters
|
|
115
|
+
|
|
116
|
+
| Parameter | Type | Description |
|
|
117
|
+
| --------- | -------- | ----------------------- |
|
|
118
|
+
| `cache` | `string` | The cache name / label. |
|
|
119
|
+
|
|
120
|
+
#### Returns
|
|
121
|
+
|
|
122
|
+
`void`
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: 'Interface: ICacheStats'
|
|
3
|
+
generated: true
|
|
4
|
+
editUrl: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Interface: ICacheStats
|
|
8
|
+
|
|
9
|
+
Defined in: [ICacheStats.ts:6](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ICacheStats.ts#L6)
|
|
10
|
+
|
|
11
|
+
Cache statistics snapshot returned by cache implementations.
|
|
12
|
+
|
|
13
|
+
## Properties
|
|
14
|
+
|
|
15
|
+
### evictions?
|
|
16
|
+
|
|
17
|
+
```ts
|
|
18
|
+
optional evictions?: number;
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Defined in: [ICacheStats.ts:43](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ICacheStats.ts#L43)
|
|
22
|
+
|
|
23
|
+
Number of cache evictions (if supported).
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
### hits
|
|
28
|
+
|
|
29
|
+
```ts
|
|
30
|
+
hits: number;
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Defined in: [ICacheStats.ts:15](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ICacheStats.ts#L15)
|
|
34
|
+
|
|
35
|
+
Number of cache hits.
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
### loadErrors
|
|
40
|
+
|
|
41
|
+
```ts
|
|
42
|
+
loadErrors: number;
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Defined in: [ICacheStats.ts:36](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ICacheStats.ts#L36)
|
|
46
|
+
|
|
47
|
+
Number of failed cache loads.
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
### loads
|
|
52
|
+
|
|
53
|
+
```ts
|
|
54
|
+
loads: number;
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Defined in: [ICacheStats.ts:29](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ICacheStats.ts#L29)
|
|
58
|
+
|
|
59
|
+
Number of successful cache loads.
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
### misses
|
|
64
|
+
|
|
65
|
+
```ts
|
|
66
|
+
misses: number;
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Defined in: [ICacheStats.ts:22](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ICacheStats.ts#L22)
|
|
70
|
+
|
|
71
|
+
Number of cache misses.
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: 'Interface: ILayeredCache\<TKey, TValue\>'
|
|
3
|
+
generated: true
|
|
4
|
+
editUrl: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Interface: ILayeredCache\<TKey, TValue\>
|
|
8
|
+
|
|
9
|
+
Defined in: [ILayeredCache.ts:15](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ILayeredCache.ts#L15)
|
|
10
|
+
|
|
11
|
+
Generic layered cache contract supporting synchronous and asynchronous
|
|
12
|
+
access patterns with optional warm-up and statistics.
|
|
13
|
+
|
|
14
|
+
## Type Parameters
|
|
15
|
+
|
|
16
|
+
| Type Parameter | Description |
|
|
17
|
+
| -------------- | ----------------------------- |
|
|
18
|
+
| `TKey` | The type of the cache keys. |
|
|
19
|
+
| `TValue` | The type of the cache values. |
|
|
20
|
+
|
|
21
|
+
## Methods
|
|
22
|
+
|
|
23
|
+
### get()
|
|
24
|
+
|
|
25
|
+
```ts
|
|
26
|
+
get(key): TValue | undefined;
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Defined in: [ILayeredCache.ts:26](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ILayeredCache.ts#L26)
|
|
30
|
+
|
|
31
|
+
Retrieves a value from the cache synchronously.
|
|
32
|
+
|
|
33
|
+
#### Parameters
|
|
34
|
+
|
|
35
|
+
| Parameter | Type | Description |
|
|
36
|
+
| --------- | ------ | -------------------- |
|
|
37
|
+
| `key` | `TKey` | The key to retrieve. |
|
|
38
|
+
|
|
39
|
+
#### Returns
|
|
40
|
+
|
|
41
|
+
`TValue` \| `undefined`
|
|
42
|
+
|
|
43
|
+
The cached value or `undefined` on a miss.
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
### getAsync()
|
|
48
|
+
|
|
49
|
+
```ts
|
|
50
|
+
getAsync(key): Promise<TValue | undefined>;
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Defined in: [ILayeredCache.ts:35](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ILayeredCache.ts#L35)
|
|
54
|
+
|
|
55
|
+
Retrieves a value from the cache asynchronously.
|
|
56
|
+
|
|
57
|
+
#### Parameters
|
|
58
|
+
|
|
59
|
+
| Parameter | Type | Description |
|
|
60
|
+
| --------- | ------ | -------------------- |
|
|
61
|
+
| `key` | `TKey` | The key to retrieve. |
|
|
62
|
+
|
|
63
|
+
#### Returns
|
|
64
|
+
|
|
65
|
+
`Promise`\<`TValue` \| `undefined`\>
|
|
66
|
+
|
|
67
|
+
A promise resolving to the cached value or `undefined` on a miss.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
### invalidate()
|
|
72
|
+
|
|
73
|
+
```ts
|
|
74
|
+
invalidate(key): void;
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Defined in: [ILayeredCache.ts:70](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ILayeredCache.ts#L70)
|
|
78
|
+
|
|
79
|
+
Invalidates a key in the cache synchronously.
|
|
80
|
+
|
|
81
|
+
#### Parameters
|
|
82
|
+
|
|
83
|
+
| Parameter | Type | Description |
|
|
84
|
+
| --------- | ------ | ---------------------- |
|
|
85
|
+
| `key` | `TKey` | The key to invalidate. |
|
|
86
|
+
|
|
87
|
+
#### Returns
|
|
88
|
+
|
|
89
|
+
`void`
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
### invalidateAsync()
|
|
94
|
+
|
|
95
|
+
```ts
|
|
96
|
+
invalidateAsync(key): Promise<void>;
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
Defined in: [ILayeredCache.ts:78](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ILayeredCache.ts#L78)
|
|
100
|
+
|
|
101
|
+
Invalidates a key in the cache asynchronously.
|
|
102
|
+
|
|
103
|
+
#### Parameters
|
|
104
|
+
|
|
105
|
+
| Parameter | Type | Description |
|
|
106
|
+
| --------- | ------ | ---------------------- |
|
|
107
|
+
| `key` | `TKey` | The key to invalidate. |
|
|
108
|
+
|
|
109
|
+
#### Returns
|
|
110
|
+
|
|
111
|
+
`Promise`\<`void`\>
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
### set()
|
|
116
|
+
|
|
117
|
+
```ts
|
|
118
|
+
set(key, value): void;
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Defined in: [ILayeredCache.ts:44](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ILayeredCache.ts#L44)
|
|
122
|
+
|
|
123
|
+
Stores a value in the cache synchronously.
|
|
124
|
+
|
|
125
|
+
#### Parameters
|
|
126
|
+
|
|
127
|
+
| Parameter | Type | Description |
|
|
128
|
+
| --------- | -------- | ------------------- |
|
|
129
|
+
| `key` | `TKey` | The key to store. |
|
|
130
|
+
| `value` | `TValue` | The value to store. |
|
|
131
|
+
|
|
132
|
+
#### Returns
|
|
133
|
+
|
|
134
|
+
`void`
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
### setAsync()
|
|
139
|
+
|
|
140
|
+
```ts
|
|
141
|
+
setAsync(key, value): Promise<void>;
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
Defined in: [ILayeredCache.ts:53](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ILayeredCache.ts#L53)
|
|
145
|
+
|
|
146
|
+
Stores a value in the cache asynchronously.
|
|
147
|
+
|
|
148
|
+
#### Parameters
|
|
149
|
+
|
|
150
|
+
| Parameter | Type | Description |
|
|
151
|
+
| --------- | -------- | ------------------- |
|
|
152
|
+
| `key` | `TKey` | The key to store. |
|
|
153
|
+
| `value` | `TValue` | The value to store. |
|
|
154
|
+
|
|
155
|
+
#### Returns
|
|
156
|
+
|
|
157
|
+
`Promise`\<`void`\>
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
### stats()?
|
|
162
|
+
|
|
163
|
+
```ts
|
|
164
|
+
optional stats(): ICacheStats;
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
Defined in: [ILayeredCache.ts:86](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ILayeredCache.ts#L86)
|
|
168
|
+
|
|
169
|
+
Returns current cache statistics.
|
|
170
|
+
|
|
171
|
+
#### Returns
|
|
172
|
+
|
|
173
|
+
[`ICacheStats`](Interface.ICacheStats)
|
|
174
|
+
|
|
175
|
+
The cache statistics snapshot.
|
|
176
|
+
|
|
177
|
+
---
|
|
178
|
+
|
|
179
|
+
### warm()?
|
|
180
|
+
|
|
181
|
+
```ts
|
|
182
|
+
optional warm(key): Promise<TValue | undefined>;
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
Defined in: [ILayeredCache.ts:62](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/ILayeredCache.ts#L62)
|
|
186
|
+
|
|
187
|
+
Proactively warms the cache for a given key.
|
|
188
|
+
|
|
189
|
+
#### Parameters
|
|
190
|
+
|
|
191
|
+
| Parameter | Type | Description |
|
|
192
|
+
| --------- | ------ | ---------------- |
|
|
193
|
+
| `key` | `TKey` | The key to warm. |
|
|
194
|
+
|
|
195
|
+
#### Returns
|
|
196
|
+
|
|
197
|
+
`Promise`\<`TValue` \| `undefined`\>
|
|
198
|
+
|
|
199
|
+
The value that was loaded and cached, or `undefined` if not found.
|