@breadstone/archipel-mcp 0.0.6 → 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-authentication/api/Variable.APPLE_AUTH_CONFIG_ENTRIES.md +1 -1
- package/data/packages/platform-authentication/api/Variable.AUTH_APPLE_CALLBACK_URL.md +1 -1
- package/data/packages/platform-authentication/api/Variable.AUTH_APPLE_CLIENT_ID.md +1 -1
- package/data/packages/platform-authentication/api/Variable.AUTH_APPLE_KEY_ID.md +1 -1
- package/data/packages/platform-authentication/api/Variable.AUTH_APPLE_PRIVATE_KEY.md +1 -1
- package/data/packages/platform-authentication/api/Variable.AUTH_APPLE_SCOPE.md +15 -0
- package/data/packages/platform-authentication/api/Variable.AUTH_APPLE_TEAM_ID.md +1 -1
- package/data/packages/platform-authentication/api/Variable.AUTH_GITHUB_CALLBACK_URL.md +1 -1
- package/data/packages/platform-authentication/api/Variable.AUTH_GITHUB_CLIENT_ID.md +1 -1
- package/data/packages/platform-authentication/api/Variable.AUTH_GITHUB_CLIENT_SECRET.md +1 -1
- package/data/packages/platform-authentication/api/Variable.AUTH_GITHUB_SCOPE.md +15 -0
- package/data/packages/platform-authentication/api/Variable.AUTH_GOOGLE_SCOPE.md +15 -0
- package/data/packages/platform-authentication/api/Variable.AUTH_MICROSOFT_CALLBACK_URL.md +1 -1
- package/data/packages/platform-authentication/api/Variable.AUTH_MICROSOFT_CLIENT_ID.md +1 -1
- package/data/packages/platform-authentication/api/Variable.AUTH_MICROSOFT_CLIENT_SECRET.md +1 -1
- package/data/packages/platform-authentication/api/Variable.AUTH_MICROSOFT_SCOPE.md +15 -0
- package/data/packages/platform-authentication/api/Variable.AUTH_MICROSOFT_TENANT.md +1 -1
- package/data/packages/platform-authentication/api/Variable.MICROSOFT_AUTH_CONFIG_ENTRIES.md +1 -1
- package/data/packages/platform-authentication/api/Variable.PLATFORM_AUTHENTICATION_CONFIG_ENTRIES.md +1 -1
- package/data/packages/platform-authentication/api/Variable.SEED_ANONYMOUS_USERNAME.md +1 -1
- package/data/packages/platform-authentication/api/index.md +4 -0
- 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,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.
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: 'Interface: ILayeredCacheOptions'
|
|
3
|
+
generated: true
|
|
4
|
+
editUrl: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Interface: ILayeredCacheOptions
|
|
8
|
+
|
|
9
|
+
Defined in: [MemoryLayeredCache.ts:16](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/MemoryLayeredCache.ts#L16)
|
|
10
|
+
|
|
11
|
+
Configuration options for [MemoryLayeredCache](Class.MemoryLayeredCache).
|
|
12
|
+
|
|
13
|
+
## Properties
|
|
14
|
+
|
|
15
|
+
### cacheName?
|
|
16
|
+
|
|
17
|
+
```ts
|
|
18
|
+
optional cacheName?: string;
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Defined in: [MemoryLayeredCache.ts:58](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/MemoryLayeredCache.ts#L58)
|
|
22
|
+
|
|
23
|
+
An optional name / label for the cache instance, used in metrics.
|
|
24
|
+
Defaults to `'memory'`.
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
### maxEntries?
|
|
29
|
+
|
|
30
|
+
```ts
|
|
31
|
+
optional maxEntries?: number;
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
Defined in: [MemoryLayeredCache.ts:42](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/MemoryLayeredCache.ts#L42)
|
|
35
|
+
|
|
36
|
+
Maximum number of entries retained in the cache. Oldest entries are
|
|
37
|
+
evicted first (LRU). Defaults to infinite.
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
### metricsRecorder?
|
|
42
|
+
|
|
43
|
+
```ts
|
|
44
|
+
optional metricsRecorder?: ICacheMetricsRecorder;
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Defined in: [MemoryLayeredCache.ts:50](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/MemoryLayeredCache.ts#L50)
|
|
48
|
+
|
|
49
|
+
Optional metrics recorder forwarded cache operation statistics.
|
|
50
|
+
Falls back to [NoopCacheMetricsRecorder](Class.NoopCacheMetricsRecorder) when omitted.
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
### staleWhileRevalidate?
|
|
55
|
+
|
|
56
|
+
```ts
|
|
57
|
+
optional staleWhileRevalidate?: boolean;
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
Defined in: [MemoryLayeredCache.ts:34](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/MemoryLayeredCache.ts#L34)
|
|
61
|
+
|
|
62
|
+
When `true`, expired entries are served immediately while a background
|
|
63
|
+
refresh is triggered. Defaults to `false`.
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
### ttlMs?
|
|
68
|
+
|
|
69
|
+
```ts
|
|
70
|
+
optional ttlMs?: number;
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Defined in: [MemoryLayeredCache.ts:26](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/MemoryLayeredCache.ts#L26)
|
|
74
|
+
|
|
75
|
+
Time to live in milliseconds. Entries older than this are considered expired.
|
|
76
|
+
Defaults to infinite (no expiration).
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: 'Interface: IRedisLayeredCacheOptions\<TValue\>'
|
|
3
|
+
generated: true
|
|
4
|
+
editUrl: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Interface: IRedisLayeredCacheOptions\<TValue\>
|
|
8
|
+
|
|
9
|
+
Defined in: [redis/RedisLayeredCache.ts:18](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L18)
|
|
10
|
+
|
|
11
|
+
Configuration options for [RedisLayeredCache](Class.RedisLayeredCache).
|
|
12
|
+
|
|
13
|
+
## Type Parameters
|
|
14
|
+
|
|
15
|
+
| Type Parameter | Description |
|
|
16
|
+
| -------------- | ---------------------------------------- |
|
|
17
|
+
| `TValue` | The type of values stored in this cache. |
|
|
18
|
+
|
|
19
|
+
## Properties
|
|
20
|
+
|
|
21
|
+
### cacheName?
|
|
22
|
+
|
|
23
|
+
```ts
|
|
24
|
+
optional cacheName?: string;
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Defined in: [redis/RedisLayeredCache.ts:68](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L68)
|
|
28
|
+
|
|
29
|
+
An optional name / label for the cache instance, used in metrics.
|
|
30
|
+
Defaults to `'redis'`.
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
### deserialize?
|
|
35
|
+
|
|
36
|
+
```ts
|
|
37
|
+
optional deserialize?: (raw) => TValue;
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Defined in: [redis/RedisLayeredCache.ts:53](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L53)
|
|
41
|
+
|
|
42
|
+
Custom deserialization function. Defaults to `JSON.parse`.
|
|
43
|
+
|
|
44
|
+
#### Parameters
|
|
45
|
+
|
|
46
|
+
| Parameter | Type |
|
|
47
|
+
| --------- | -------- |
|
|
48
|
+
| `raw` | `string` |
|
|
49
|
+
|
|
50
|
+
#### Returns
|
|
51
|
+
|
|
52
|
+
`TValue`
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
### keyPrefix
|
|
57
|
+
|
|
58
|
+
```ts
|
|
59
|
+
keyPrefix: string;
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Defined in: [redis/RedisLayeredCache.ts:32](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L32)
|
|
63
|
+
|
|
64
|
+
Key prefix applied to all Redis keys managed by this cache instance.
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
### metricsRecorder?
|
|
69
|
+
|
|
70
|
+
```ts
|
|
71
|
+
optional metricsRecorder?: ICacheMetricsRecorder;
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
Defined in: [redis/RedisLayeredCache.ts:60](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L60)
|
|
75
|
+
|
|
76
|
+
Optional metrics recorder forwarded cache operation statistics.
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
### serialize?
|
|
81
|
+
|
|
82
|
+
```ts
|
|
83
|
+
optional serialize?: (value) => string;
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
Defined in: [redis/RedisLayeredCache.ts:46](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L46)
|
|
87
|
+
|
|
88
|
+
Custom serialization function. Defaults to `JSON.stringify`.
|
|
89
|
+
|
|
90
|
+
#### Parameters
|
|
91
|
+
|
|
92
|
+
| Parameter | Type |
|
|
93
|
+
| --------- | -------- |
|
|
94
|
+
| `value` | `TValue` |
|
|
95
|
+
|
|
96
|
+
#### Returns
|
|
97
|
+
|
|
98
|
+
`string`
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
### ttlSeconds?
|
|
103
|
+
|
|
104
|
+
```ts
|
|
105
|
+
optional ttlSeconds?: number;
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
Defined in: [redis/RedisLayeredCache.ts:39](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L39)
|
|
109
|
+
|
|
110
|
+
Optional TTL in seconds applied to every stored entry.
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
### url
|
|
115
|
+
|
|
116
|
+
```ts
|
|
117
|
+
url: string;
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Defined in: [redis/RedisLayeredCache.ts:25](https://github.com/RueDeRennes/archipel/blob/main/libs/platform-caching/src/redis/RedisLayeredCache.ts#L25)
|
|
121
|
+
|
|
122
|
+
Redis connection URL (e.g. `redis://localhost:6379`).
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: '@breadstone/archipel-platform-caching'
|
|
3
|
+
generated: true
|
|
4
|
+
editUrl: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# @breadstone/archipel-platform-caching
|
|
8
|
+
|
|
9
|
+
## Classes
|
|
10
|
+
|
|
11
|
+
| Class | Description |
|
|
12
|
+
| ---------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
13
|
+
| [MemoryLayeredCache](Class.MemoryLayeredCache) | In-memory layered cache with LRU eviction, TTL expiration and optional stale-while-revalidate support. Falls back to an asynchronous loader function on cache misses. |
|
|
14
|
+
| [NoopCacheMetricsRecorder](Class.NoopCacheMetricsRecorder) | No-op implementation of [ICacheMetricsRecorder](Interface.ICacheMetricsRecorder) used as the default when no external metrics backend is configured. |
|
|
15
|
+
| [RedisLayeredCache](Class.RedisLayeredCache) | Redis-backed layered cache implementation. Falls back to an asynchronous loader function when the requested key is not present in Redis. |
|
|
16
|
+
|
|
17
|
+
## Interfaces
|
|
18
|
+
|
|
19
|
+
| Interface | Description |
|
|
20
|
+
| ---------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
|
|
21
|
+
| [ICacheMetricsRecorder](Interface.ICacheMetricsRecorder) | Metrics recorder for cache operations. Implementations can forward measurements to Prometheus, OpenTelemetry, or any other backend. |
|
|
22
|
+
| [ICacheStats](Interface.ICacheStats) | Cache statistics snapshot returned by cache implementations. |
|
|
23
|
+
| [ILayeredCache](Interface.ILayeredCache) | Generic layered cache contract supporting synchronous and asynchronous access patterns with optional warm-up and statistics. |
|
|
24
|
+
| [ILayeredCacheOptions](Interface.ILayeredCacheOptions) | Configuration options for [MemoryLayeredCache](Class.MemoryLayeredCache). |
|
|
25
|
+
| [IRedisLayeredCacheOptions](Interface.IRedisLayeredCacheOptions) | Configuration options for [RedisLayeredCache](Class.RedisLayeredCache). |
|