@cmdoss/memwal-sdk 0.8.0 → 1.0.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 +522 -160
- package/dist/client/ClientMemoryManager.d.ts.map +1 -1
- package/dist/client/ClientMemoryManager.js +25 -8
- package/dist/client/ClientMemoryManager.js.map +1 -1
- package/dist/client/PersonalDataWallet.d.ts.map +1 -1
- package/dist/client/SimplePDWClient.d.ts +62 -2
- package/dist/client/SimplePDWClient.d.ts.map +1 -1
- package/dist/client/SimplePDWClient.js +96 -11
- package/dist/client/SimplePDWClient.js.map +1 -1
- package/dist/client/namespaces/IndexNamespace.d.ts +1 -1
- package/dist/client/namespaces/IndexNamespace.d.ts.map +1 -1
- package/dist/client/namespaces/IndexNamespace.js +7 -4
- package/dist/client/namespaces/IndexNamespace.js.map +1 -1
- package/dist/client/namespaces/MemoryNamespace.d.ts +47 -0
- package/dist/client/namespaces/MemoryNamespace.d.ts.map +1 -1
- package/dist/client/namespaces/MemoryNamespace.js +257 -27
- package/dist/client/namespaces/MemoryNamespace.js.map +1 -1
- package/dist/client/namespaces/consolidated/AdvancedNamespace.d.ts +215 -0
- package/dist/client/namespaces/consolidated/AdvancedNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/consolidated/AdvancedNamespace.js +214 -0
- package/dist/client/namespaces/consolidated/AdvancedNamespace.js.map +1 -0
- package/dist/client/namespaces/consolidated/StorageNamespace.d.ts +3 -1
- package/dist/client/namespaces/consolidated/StorageNamespace.d.ts.map +1 -1
- package/dist/client/namespaces/consolidated/StorageNamespace.js.map +1 -1
- package/dist/client/namespaces/consolidated/index.d.ts +1 -0
- package/dist/client/namespaces/consolidated/index.d.ts.map +1 -1
- package/dist/client/namespaces/consolidated/index.js +1 -0
- package/dist/client/namespaces/consolidated/index.js.map +1 -1
- package/dist/config/ConfigurationHelper.js +61 -61
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +9 -4
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/index.d.ts +1 -0
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +2 -0
- package/dist/config/index.js.map +1 -1
- package/dist/config/modelDefaults.d.ts +67 -0
- package/dist/config/modelDefaults.d.ts.map +1 -0
- package/dist/config/modelDefaults.js +91 -0
- package/dist/config/modelDefaults.js.map +1 -0
- package/dist/core/types/index.d.ts +4 -0
- package/dist/core/types/index.d.ts.map +1 -1
- package/dist/core/types/index.js.map +1 -1
- package/dist/graph/GraphService.d.ts.map +1 -1
- package/dist/graph/GraphService.js +22 -21
- package/dist/graph/GraphService.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/infrastructure/walrus/WalrusStorageService.d.ts +6 -0
- package/dist/infrastructure/walrus/WalrusStorageService.d.ts.map +1 -1
- package/dist/infrastructure/walrus/WalrusStorageService.js +23 -4
- package/dist/infrastructure/walrus/WalrusStorageService.js.map +1 -1
- package/dist/langchain/createPDWRAG.js +30 -30
- package/dist/pipeline/MemoryPipeline.d.ts.map +1 -1
- package/dist/pipeline/MemoryPipeline.js +2 -1
- package/dist/pipeline/MemoryPipeline.js.map +1 -1
- package/dist/services/EmbeddingService.d.ts +9 -0
- package/dist/services/EmbeddingService.d.ts.map +1 -1
- package/dist/services/EmbeddingService.js +31 -10
- package/dist/services/EmbeddingService.js.map +1 -1
- package/dist/services/GeminiAIService.d.ts.map +1 -1
- package/dist/services/GeminiAIService.js +311 -310
- package/dist/services/GeminiAIService.js.map +1 -1
- package/dist/services/MemoryIndexService.d.ts +2 -0
- package/dist/services/MemoryIndexService.d.ts.map +1 -1
- package/dist/services/MemoryIndexService.js +11 -4
- package/dist/services/MemoryIndexService.js.map +1 -1
- package/dist/services/StorageService.d.ts +4 -1
- package/dist/services/StorageService.d.ts.map +1 -1
- package/dist/services/StorageService.js.map +1 -1
- package/dist/services/VectorService.js +1 -1
- package/dist/services/VectorService.js.map +1 -1
- package/dist/services/storage/QuiltBatchManager.d.ts +7 -0
- package/dist/services/storage/QuiltBatchManager.d.ts.map +1 -1
- package/dist/services/storage/QuiltBatchManager.js +24 -5
- package/dist/services/storage/QuiltBatchManager.js.map +1 -1
- package/dist/services/storage/WalrusStorageManager.d.ts +10 -1
- package/dist/services/storage/WalrusStorageManager.d.ts.map +1 -1
- package/dist/services/storage/WalrusStorageManager.js +53 -12
- package/dist/services/storage/WalrusStorageManager.js.map +1 -1
- package/dist/vector/BrowserHnswIndexService.js +3 -3
- package/dist/vector/BrowserHnswIndexService.js.map +1 -1
- package/dist/vector/HnswWasmService.js +1 -1
- package/dist/vector/HnswWasmService.js.map +1 -1
- package/dist/vector/NodeHnswService.js +5 -5
- package/dist/vector/NodeHnswService.js.map +1 -1
- package/dist/vector/createHnswService.d.ts +4 -0
- package/dist/vector/createHnswService.d.ts.map +1 -1
- package/dist/vector/createHnswService.js +15 -3
- package/dist/vector/createHnswService.js.map +1 -1
- package/package.json +1 -1
- package/src/access/PermissionService.ts +635 -635
- package/src/aggregation/AggregationService.ts +389 -389
- package/src/ai-sdk/PDWVectorStore.ts +715 -715
- package/src/ai-sdk/index.ts +65 -65
- package/src/ai-sdk/tools.ts +460 -460
- package/src/ai-sdk/types.ts +404 -404
- package/src/batch/BatchManager.ts +597 -597
- package/src/batch/BatchingService.ts +429 -429
- package/src/batch/MemoryProcessingCache.ts +492 -492
- package/src/batch/index.ts +30 -30
- package/src/browser.ts +200 -200
- package/src/client/ClientMemoryManager.ts +1004 -987
- package/src/client/PersonalDataWallet.ts +345 -345
- package/src/client/SimplePDWClient.ts +1387 -1289
- package/src/client/factory.ts +154 -154
- package/src/client/namespaces/AnalyticsNamespace.ts +377 -377
- package/src/client/namespaces/BatchNamespace.ts +356 -356
- package/src/client/namespaces/CacheNamespace.ts +123 -123
- package/src/client/namespaces/CapabilityNamespace.ts +217 -217
- package/src/client/namespaces/ClassifyNamespace.ts +169 -169
- package/src/client/namespaces/ContextNamespace.ts +297 -297
- package/src/client/namespaces/EncryptionNamespace.ts +221 -221
- package/src/client/namespaces/GraphNamespace.ts +468 -468
- package/src/client/namespaces/IndexNamespace.ts +364 -361
- package/src/client/namespaces/MemoryNamespace.ts +1704 -1422
- package/src/client/namespaces/PermissionsNamespace.ts +254 -254
- package/src/client/namespaces/PipelineNamespace.ts +220 -220
- package/src/client/namespaces/StorageNamespace.ts +458 -458
- package/src/client/namespaces/TxNamespace.ts +260 -260
- package/src/client/namespaces/WalletNamespace.ts +243 -243
- package/src/client/namespaces/consolidated/AdvancedNamespace.ts +264 -0
- package/src/client/namespaces/consolidated/BlockchainNamespace.ts +607 -607
- package/src/client/namespaces/consolidated/SecurityNamespace.ts +648 -648
- package/src/client/namespaces/consolidated/StorageNamespace.ts +1143 -1141
- package/src/client/namespaces/consolidated/index.ts +41 -39
- package/src/client/signers/KeypairSigner.ts +108 -108
- package/src/client/signers/UnifiedSigner.ts +110 -110
- package/src/client/signers/WalletAdapterSigner.ts +159 -159
- package/src/client/signers/index.ts +26 -26
- package/src/config/ConfigurationHelper.ts +412 -412
- package/src/config/defaults.ts +56 -51
- package/src/config/index.ts +16 -9
- package/src/config/modelDefaults.ts +103 -0
- package/src/config/validation.ts +70 -70
- package/src/core/index.ts +14 -14
- package/src/core/interfaces/IService.ts +307 -307
- package/src/core/interfaces/index.ts +8 -8
- package/src/core/types/capability.ts +297 -297
- package/src/core/types/index.ts +874 -870
- package/src/core/types/wallet.ts +270 -270
- package/src/core/types.ts +9 -9
- package/src/core/wallet.ts +222 -222
- package/src/embedding/index.ts +19 -19
- package/src/embedding/types.ts +357 -357
- package/src/errors/index.ts +602 -602
- package/src/errors/recovery.ts +461 -461
- package/src/errors/validation.ts +567 -567
- package/src/generated/pdw/capability.ts +319 -319
- package/src/graph/GraphService.ts +888 -887
- package/src/graph/KnowledgeGraphManager.ts +728 -728
- package/src/graph/index.ts +25 -25
- package/src/index.ts +498 -498
- package/src/infrastructure/index.ts +22 -22
- package/src/infrastructure/seal/EncryptionService.ts +628 -628
- package/src/infrastructure/seal/SealService.ts +613 -613
- package/src/infrastructure/seal/index.ts +9 -9
- package/src/infrastructure/sui/BlockchainManager.ts +627 -627
- package/src/infrastructure/sui/SuiService.ts +888 -888
- package/src/infrastructure/sui/index.ts +9 -9
- package/src/infrastructure/walrus/StorageManager.ts +604 -604
- package/src/infrastructure/walrus/WalrusStorageService.ts +637 -612
- package/src/infrastructure/walrus/index.ts +9 -9
- package/src/langchain/createPDWRAG.ts +303 -303
- package/src/langchain/index.ts +47 -47
- package/src/permissions/ConsentRepository.browser.ts +249 -249
- package/src/permissions/ConsentRepository.ts +364 -364
- package/src/pipeline/MemoryPipeline.ts +863 -862
- package/src/pipeline/PipelineManager.ts +683 -683
- package/src/pipeline/index.ts +26 -26
- package/src/retrieval/AdvancedSearchService.ts +629 -629
- package/src/retrieval/MemoryAnalyticsService.ts +711 -711
- package/src/retrieval/MemoryDecryptionPipeline.ts +825 -825
- package/src/retrieval/index.ts +42 -42
- package/src/services/BatchService.ts +352 -352
- package/src/services/CapabilityService.ts +464 -464
- package/src/services/ClassifierService.ts +465 -465
- package/src/services/CrossContextPermissionService.ts +486 -486
- package/src/services/EmbeddingService.ts +796 -771
- package/src/services/EncryptionService.ts +712 -712
- package/src/services/GeminiAIService.ts +754 -753
- package/src/services/MemoryIndexService.ts +1009 -1003
- package/src/services/MemoryService.ts +369 -369
- package/src/services/QueryService.ts +890 -890
- package/src/services/StorageService.ts +1185 -1182
- package/src/services/TransactionService.ts +838 -838
- package/src/services/VectorService.ts +462 -462
- package/src/services/ViewService.ts +484 -484
- package/src/services/index.ts +25 -25
- package/src/services/storage/BlobAttributesManager.ts +333 -333
- package/src/services/storage/KnowledgeGraphManager.ts +425 -425
- package/src/services/storage/MemorySearchManager.ts +387 -387
- package/src/services/storage/QuiltBatchManager.ts +1157 -1130
- package/src/services/storage/WalrusMetadataManager.ts +268 -268
- package/src/services/storage/WalrusStorageManager.ts +333 -287
- package/src/services/storage/index.ts +57 -57
- package/src/types/index.ts +13 -13
- package/src/utils/index.ts +76 -76
- package/src/utils/memoryIndexOnChain.ts +507 -507
- package/src/vector/BrowserHnswIndexService.ts +758 -758
- package/src/vector/HnswWasmService.ts +731 -731
- package/src/vector/IHnswService.ts +233 -233
- package/src/vector/NodeHnswService.ts +833 -833
- package/src/vector/createHnswService.ts +147 -135
- package/src/vector/index.ts +56 -56
- package/src/wallet/ContextWalletService.ts +656 -656
- package/src/wallet/MainWalletService.ts +317 -317
package/src/config/defaults.ts
CHANGED
|
@@ -1,52 +1,57 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Default PDW Configuration
|
|
3
|
-
*
|
|
4
|
-
* Provides sensible defaults for different environments
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
import type { PDWConfig } from '../types';
|
|
8
|
-
|
|
9
|
-
export function createDefaultConfig(): PDWConfig {
|
|
10
|
-
return {
|
|
11
|
-
// Updated January 12, 2026 - SEAL key_id first argument fix
|
|
12
|
-
packageId: '0xa5d7d98ea41620c9aaf9f13afa6512455d4d10ca06ccea3f8cd5b2b9568e3a9e',
|
|
13
|
-
accessRegistryId: '0x0',
|
|
14
|
-
encryptionConfig: {
|
|
15
|
-
enabled: true,
|
|
16
|
-
keyServers: [], // To be configured based on environment
|
|
17
|
-
policyConfig: {
|
|
18
|
-
threshold: 2, // 2-of-3 threshold by default
|
|
19
|
-
},
|
|
20
|
-
},
|
|
21
|
-
storageConfig: {
|
|
22
|
-
cacheEnabled: true,
|
|
23
|
-
encryptionEnabled: true,
|
|
24
|
-
},
|
|
25
|
-
// Walrus Storage Configuration
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Default PDW Configuration
|
|
3
|
+
*
|
|
4
|
+
* Provides sensible defaults for different environments
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import type { PDWConfig } from '../types';
|
|
8
|
+
|
|
9
|
+
export function createDefaultConfig(): PDWConfig {
|
|
10
|
+
return {
|
|
11
|
+
// Updated January 12, 2026 - SEAL key_id first argument fix
|
|
12
|
+
packageId: '0xa5d7d98ea41620c9aaf9f13afa6512455d4d10ca06ccea3f8cd5b2b9568e3a9e',
|
|
13
|
+
accessRegistryId: '0x0',
|
|
14
|
+
encryptionConfig: {
|
|
15
|
+
enabled: true,
|
|
16
|
+
keyServers: [], // To be configured based on environment
|
|
17
|
+
policyConfig: {
|
|
18
|
+
threshold: 2, // 2-of-3 threshold by default
|
|
19
|
+
},
|
|
20
|
+
},
|
|
21
|
+
storageConfig: {
|
|
22
|
+
cacheEnabled: true,
|
|
23
|
+
encryptionEnabled: true,
|
|
24
|
+
},
|
|
25
|
+
// Walrus Storage Configuration (Testnet defaults)
|
|
26
|
+
// Publisher: Direct blob uploads (server-side, full control)
|
|
27
|
+
walrusPublisherUrl: 'https://publisher.walrus-testnet.walrus.space',
|
|
28
|
+
// Upload Relay: Optimized for browser/mobile (fewer connections, faster)
|
|
29
|
+
walrusUploadRelayUrl: 'https://upload-relay.testnet.walrus.space',
|
|
30
|
+
// Aggregator: Blob retrieval
|
|
31
|
+
walrusAggregatorUrl: 'https://aggregator.walrus-testnet.walrus.space',
|
|
32
|
+
walrusMaxFileSize: 10 * 1024 * 1024, // 10MB (public service limit)
|
|
33
|
+
walrusTimeout: 60000, // 60 seconds for upload relay
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export function createTestnetConfig(overrides: Partial<PDWConfig> = {}): PDWConfig {
|
|
38
|
+
return {
|
|
39
|
+
...createDefaultConfig(),
|
|
40
|
+
accessRegistryId: overrides.accessRegistryId ?? '0x0',
|
|
41
|
+
encryptionConfig: {
|
|
42
|
+
enabled: true,
|
|
43
|
+
keyServers: [
|
|
44
|
+
// Testnet SEAL key servers
|
|
45
|
+
'0x0' // Placeholder - will be updated with actual testnet servers
|
|
46
|
+
],
|
|
47
|
+
policyConfig: {
|
|
48
|
+
threshold: 2,
|
|
49
|
+
},
|
|
50
|
+
},
|
|
51
|
+
// Testnet Walrus endpoints
|
|
52
|
+
walrusPublisherUrl: 'https://publisher.walrus-testnet.walrus.space',
|
|
53
|
+
walrusUploadRelayUrl: 'https://upload-relay.testnet.walrus.space',
|
|
54
|
+
walrusAggregatorUrl: 'https://aggregator.walrus-testnet.walrus.space',
|
|
55
|
+
...overrides,
|
|
56
|
+
};
|
|
52
57
|
}
|
package/src/config/index.ts
CHANGED
|
@@ -1,9 +1,16 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Configuration Module
|
|
3
|
-
*
|
|
4
|
-
* Comprehensive configuration management for the PDW SDK,
|
|
5
|
-
* including environment variable support and validation.
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
export { ConfigurationHelper, Config } from './ConfigurationHelper';
|
|
9
|
-
export type { SDKConfig, EnvironmentConfig } from './ConfigurationHelper';
|
|
1
|
+
/**
|
|
2
|
+
* Configuration Module
|
|
3
|
+
*
|
|
4
|
+
* Comprehensive configuration management for the PDW SDK,
|
|
5
|
+
* including environment variable support and validation.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
export { ConfigurationHelper, Config } from './ConfigurationHelper';
|
|
9
|
+
export type { SDKConfig, EnvironmentConfig } from './ConfigurationHelper';
|
|
10
|
+
|
|
11
|
+
// Model defaults - centralized AI model configuration
|
|
12
|
+
export {
|
|
13
|
+
MODEL_DEFAULTS,
|
|
14
|
+
getDefaultEmbeddingModel,
|
|
15
|
+
getChatModel
|
|
16
|
+
} from './modelDefaults';
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Model Defaults - Centralized AI model configuration
|
|
3
|
+
*
|
|
4
|
+
* All default AI model settings are defined here for easy customization.
|
|
5
|
+
* Users can override these via:
|
|
6
|
+
* 1. Environment variables (AI_CHAT_MODEL, EMBEDDING_MODEL, etc.)
|
|
7
|
+
* 2. SDK config options when initializing SimplePDWClient
|
|
8
|
+
*
|
|
9
|
+
* @module config/modelDefaults
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Default AI model configuration
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* import { MODEL_DEFAULTS } from '@cmdoss/memwal-sdk';
|
|
18
|
+
*
|
|
19
|
+
* // Use defaults
|
|
20
|
+
* console.log(MODEL_DEFAULTS.CHAT_MODEL); // 'google/gemini-2.5-flash'
|
|
21
|
+
*
|
|
22
|
+
* // Override via env vars
|
|
23
|
+
* process.env.AI_CHAT_MODEL = 'anthropic/claude-3.5-sonnet';
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export const MODEL_DEFAULTS = {
|
|
27
|
+
// =========================================================================
|
|
28
|
+
// Embedding Models (for vector search)
|
|
29
|
+
// =========================================================================
|
|
30
|
+
|
|
31
|
+
/** Default embedding model for OpenRouter provider */
|
|
32
|
+
EMBEDDING_OPENROUTER: 'google/gemini-embedding-001',
|
|
33
|
+
|
|
34
|
+
/** Default embedding model for Google provider */
|
|
35
|
+
EMBEDDING_GOOGLE: 'text-embedding-004',
|
|
36
|
+
|
|
37
|
+
/** Default embedding model for OpenAI provider */
|
|
38
|
+
EMBEDDING_OPENAI: 'text-embedding-3-small',
|
|
39
|
+
|
|
40
|
+
/** Default embedding model for Cohere provider */
|
|
41
|
+
EMBEDDING_COHERE: 'embed-english-v3.0',
|
|
42
|
+
|
|
43
|
+
// =========================================================================
|
|
44
|
+
// Chat/Analysis Models (for RAG, knowledge graph extraction)
|
|
45
|
+
// =========================================================================
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Default chat/analysis model (OpenRouter format)
|
|
49
|
+
*
|
|
50
|
+
* Used for:
|
|
51
|
+
* - RAG responses
|
|
52
|
+
* - Knowledge graph entity extraction
|
|
53
|
+
* - Content classification
|
|
54
|
+
*
|
|
55
|
+
* Popular alternatives:
|
|
56
|
+
* - 'google/gemini-2.5-pro' - higher quality
|
|
57
|
+
* - 'openai/gpt-4o-mini' - fast, cheap
|
|
58
|
+
* - 'openai/gpt-4o' - highest quality
|
|
59
|
+
* - 'anthropic/claude-3.5-sonnet' - balanced
|
|
60
|
+
*/
|
|
61
|
+
CHAT_MODEL: 'google/gemini-2.5-flash',
|
|
62
|
+
|
|
63
|
+
// =========================================================================
|
|
64
|
+
// Embedding Dimensions
|
|
65
|
+
// =========================================================================
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Default embedding dimensions
|
|
69
|
+
*
|
|
70
|
+
* Lower dimensions = faster but less accurate
|
|
71
|
+
* - 768: Fast, good for most use cases (default)
|
|
72
|
+
* - 1536: Balanced
|
|
73
|
+
* - 3072: Highest quality, slowest
|
|
74
|
+
*/
|
|
75
|
+
EMBEDDING_DIMENSIONS: 768,
|
|
76
|
+
} as const;
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Get the default embedding model for a provider
|
|
80
|
+
*/
|
|
81
|
+
export function getDefaultEmbeddingModel(
|
|
82
|
+
provider: 'google' | 'openai' | 'openrouter' | 'cohere' | string
|
|
83
|
+
): string {
|
|
84
|
+
switch (provider) {
|
|
85
|
+
case 'google':
|
|
86
|
+
return MODEL_DEFAULTS.EMBEDDING_GOOGLE;
|
|
87
|
+
case 'openai':
|
|
88
|
+
return MODEL_DEFAULTS.EMBEDDING_OPENAI;
|
|
89
|
+
case 'openrouter':
|
|
90
|
+
return MODEL_DEFAULTS.EMBEDDING_OPENROUTER;
|
|
91
|
+
case 'cohere':
|
|
92
|
+
return MODEL_DEFAULTS.EMBEDDING_COHERE;
|
|
93
|
+
default:
|
|
94
|
+
return MODEL_DEFAULTS.EMBEDDING_GOOGLE;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Get chat model from config or environment
|
|
100
|
+
*/
|
|
101
|
+
export function getChatModel(configModel?: string): string {
|
|
102
|
+
return configModel || process.env.AI_CHAT_MODEL || MODEL_DEFAULTS.CHAT_MODEL;
|
|
103
|
+
}
|
package/src/config/validation.ts
CHANGED
|
@@ -1,71 +1,71 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Configuration Validation
|
|
3
|
-
*
|
|
4
|
-
* Validates PDW configuration and provides helpful error messages
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
import type { PDWConfig } from '../types';
|
|
8
|
-
|
|
9
|
-
export class ConfigurationError extends Error {
|
|
10
|
-
constructor(message: string) {
|
|
11
|
-
super(`PDW Configuration Error: ${message}`);
|
|
12
|
-
this.name = 'ConfigurationError';
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export function validateConfig(config: Partial<PDWConfig>): PDWConfig {
|
|
17
|
-
const errors: string[] = [];
|
|
18
|
-
|
|
19
|
-
// Validate required fields
|
|
20
|
-
if (!config.packageId || config.packageId === '0x0') {
|
|
21
|
-
console.warn('PDW SDK: packageId not configured. Please set a valid deployed package ID.');
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
// Validate encryption config
|
|
25
|
-
if (config.encryptionConfig?.enabled &&
|
|
26
|
-
(!config.encryptionConfig.keyServers || config.encryptionConfig.keyServers.length === 0)) {
|
|
27
|
-
console.warn('PDW SDK: Encryption is enabled but no key servers configured. Some features may not work.');
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
// Validate threshold configuration
|
|
31
|
-
if (config.encryptionConfig?.policyConfig?.threshold) {
|
|
32
|
-
const threshold = config.encryptionConfig.policyConfig.threshold;
|
|
33
|
-
if (threshold < 1) {
|
|
34
|
-
errors.push('Encryption threshold must be at least 1');
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
// Validate storage config
|
|
39
|
-
if (config.storageConfig?.provider && !['walrus', 'local'].includes(config.storageConfig.provider)) {
|
|
40
|
-
errors.push('Storage provider must be either "walrus" or "local"');
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
if (errors.length > 0) {
|
|
44
|
-
throw new ConfigurationError(errors.join('; '));
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
return config as PDWConfig;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
export function mergeConfigs(base: PDWConfig, overrides: Partial<PDWConfig>): PDWConfig {
|
|
51
|
-
return {
|
|
52
|
-
...base,
|
|
53
|
-
...overrides,
|
|
54
|
-
encryptionConfig: {
|
|
55
|
-
enabled: true,
|
|
56
|
-
...base.encryptionConfig,
|
|
57
|
-
...overrides.encryptionConfig,
|
|
58
|
-
policyConfig: {
|
|
59
|
-
...base.encryptionConfig?.policyConfig,
|
|
60
|
-
...overrides.encryptionConfig?.policyConfig,
|
|
61
|
-
},
|
|
62
|
-
},
|
|
63
|
-
storageConfig: {
|
|
64
|
-
provider: 'walrus' as const,
|
|
65
|
-
cacheEnabled: true,
|
|
66
|
-
encryptionEnabled: true,
|
|
67
|
-
...base.storageConfig,
|
|
68
|
-
...overrides.storageConfig,
|
|
69
|
-
},
|
|
70
|
-
};
|
|
1
|
+
/**
|
|
2
|
+
* Configuration Validation
|
|
3
|
+
*
|
|
4
|
+
* Validates PDW configuration and provides helpful error messages
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import type { PDWConfig } from '../types';
|
|
8
|
+
|
|
9
|
+
export class ConfigurationError extends Error {
|
|
10
|
+
constructor(message: string) {
|
|
11
|
+
super(`PDW Configuration Error: ${message}`);
|
|
12
|
+
this.name = 'ConfigurationError';
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export function validateConfig(config: Partial<PDWConfig>): PDWConfig {
|
|
17
|
+
const errors: string[] = [];
|
|
18
|
+
|
|
19
|
+
// Validate required fields
|
|
20
|
+
if (!config.packageId || config.packageId === '0x0') {
|
|
21
|
+
console.warn('PDW SDK: packageId not configured. Please set a valid deployed package ID.');
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// Validate encryption config
|
|
25
|
+
if (config.encryptionConfig?.enabled &&
|
|
26
|
+
(!config.encryptionConfig.keyServers || config.encryptionConfig.keyServers.length === 0)) {
|
|
27
|
+
console.warn('PDW SDK: Encryption is enabled but no key servers configured. Some features may not work.');
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
// Validate threshold configuration
|
|
31
|
+
if (config.encryptionConfig?.policyConfig?.threshold) {
|
|
32
|
+
const threshold = config.encryptionConfig.policyConfig.threshold;
|
|
33
|
+
if (threshold < 1) {
|
|
34
|
+
errors.push('Encryption threshold must be at least 1');
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// Validate storage config
|
|
39
|
+
if (config.storageConfig?.provider && !['walrus', 'local'].includes(config.storageConfig.provider)) {
|
|
40
|
+
errors.push('Storage provider must be either "walrus" or "local"');
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
if (errors.length > 0) {
|
|
44
|
+
throw new ConfigurationError(errors.join('; '));
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
return config as PDWConfig;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export function mergeConfigs(base: PDWConfig, overrides: Partial<PDWConfig>): PDWConfig {
|
|
51
|
+
return {
|
|
52
|
+
...base,
|
|
53
|
+
...overrides,
|
|
54
|
+
encryptionConfig: {
|
|
55
|
+
enabled: true,
|
|
56
|
+
...base.encryptionConfig,
|
|
57
|
+
...overrides.encryptionConfig,
|
|
58
|
+
policyConfig: {
|
|
59
|
+
...base.encryptionConfig?.policyConfig,
|
|
60
|
+
...overrides.encryptionConfig?.policyConfig,
|
|
61
|
+
},
|
|
62
|
+
},
|
|
63
|
+
storageConfig: {
|
|
64
|
+
provider: 'walrus' as const,
|
|
65
|
+
cacheEnabled: true,
|
|
66
|
+
encryptionEnabled: true,
|
|
67
|
+
...base.storageConfig,
|
|
68
|
+
...overrides.storageConfig,
|
|
69
|
+
},
|
|
70
|
+
};
|
|
71
71
|
}
|
package/src/core/index.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Core Module - Barrel Export
|
|
3
|
-
*
|
|
4
|
-
* Re-exports all core types, interfaces, and base classes for the PDW SDK.
|
|
5
|
-
*
|
|
6
|
-
* All type definitions are in ./types/index.ts
|
|
7
|
-
* This file only provides re-exports for convenience.
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
// Re-export core interfaces and base classes
|
|
11
|
-
export * from './interfaces';
|
|
12
|
-
|
|
13
|
-
// Re-export all types from the types module
|
|
14
|
-
export * from './types';
|
|
1
|
+
/**
|
|
2
|
+
* Core Module - Barrel Export
|
|
3
|
+
*
|
|
4
|
+
* Re-exports all core types, interfaces, and base classes for the PDW SDK.
|
|
5
|
+
*
|
|
6
|
+
* All type definitions are in ./types/index.ts
|
|
7
|
+
* This file only provides re-exports for convenience.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
// Re-export core interfaces and base classes
|
|
11
|
+
export * from './interfaces';
|
|
12
|
+
|
|
13
|
+
// Re-export all types from the types module
|
|
14
|
+
export * from './types';
|