shogun-core 4.2.5 → 5.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.
Files changed (37) hide show
  1. package/README.md +59 -10
  2. package/dist/browser/shogun-core.js +72886 -69843
  3. package/dist/browser/shogun-core.js.map +1 -1
  4. package/dist/core.js +7 -5
  5. package/dist/examples/migration-examples.js +297 -0
  6. package/dist/examples/simple-transport-examples.js +206 -0
  7. package/dist/examples/transport-layer-examples.js +738 -0
  8. package/dist/examples/zkproof-credentials-example.js +11 -11
  9. package/dist/examples/zkproof-example.js +15 -10
  10. package/dist/gundb/api.js +3 -4
  11. package/dist/gundb/db.js +645 -704
  12. package/dist/gundb/transport/GunTransport.js +286 -0
  13. package/dist/gundb/transport/MongodbTransport.js +39 -0
  14. package/dist/gundb/transport/PostgresqlTransport.js +39 -0
  15. package/dist/gundb/transport/SqliteTransport.js +419 -0
  16. package/dist/gundb/transport/TransportLayer.js +37 -0
  17. package/dist/managers/AuthManager.js +6 -5
  18. package/dist/managers/CoreInitializer.js +85 -65
  19. package/dist/plugins/base.js +23 -0
  20. package/dist/plugins/nostr/nostrConnectorPlugin.js +4 -0
  21. package/dist/plugins/web3/web3ConnectorPlugin.js +10 -0
  22. package/dist/plugins/webauthn/webauthnPlugin.js +10 -2
  23. package/dist/plugins/zkproof/zkProofPlugin.js +2 -0
  24. package/dist/types/core.d.ts +3 -1
  25. package/dist/types/examples/migration-examples.d.ts +51 -0
  26. package/dist/types/examples/simple-transport-examples.d.ts +27 -0
  27. package/dist/types/examples/transport-layer-examples.d.ts +40 -0
  28. package/dist/types/gundb/db.d.ts +156 -103
  29. package/dist/types/gundb/transport/GunTransport.d.ts +116 -0
  30. package/dist/types/gundb/transport/MongodbTransport.d.ts +18 -0
  31. package/dist/types/gundb/transport/PostgresqlTransport.d.ts +18 -0
  32. package/dist/types/gundb/transport/SqliteTransport.d.ts +120 -0
  33. package/dist/types/gundb/transport/TransportLayer.d.ts +71 -0
  34. package/dist/types/interfaces/shogun.d.ts +3 -1
  35. package/dist/types/managers/CoreInitializer.d.ts +6 -6
  36. package/dist/types/plugins/base.d.ts +12 -0
  37. package/package.json +3 -1
package/README.md CHANGED
@@ -30,6 +30,15 @@ Shogun Core is a comprehensive SDK for building decentralized applications (dApp
30
30
 
31
31
  ## Recent Updates (v2.0.1)
32
32
 
33
+ ### 🎉 **Test Suite Excellence Achieved**
34
+
35
+ - **🚀 OUTSTANDING TEST RESULTS**: Achieved **99.86% test pass rate** (695/696 tests passing)
36
+ - **⚡ PERFORMANCE BREAKTHROUGH**: Eliminated all timeout issues - reduced test execution time from 60+ seconds to <2 seconds
37
+ - **🔧 COMPREHENSIVE FIXES**: Fixed 12 major test failures across plugin flows and multi-storage integration
38
+ - **✅ PLUGIN SYSTEM**: Complete plugin functionality testing with extensive mocking strategies
39
+ - **✅ MULTI-STORAGE**: 100% success rate on multi-storage integration tests
40
+ - **🛡️ ROBUST TESTING**: Comprehensive error handling, edge cases, and browser compatibility validation
41
+
33
42
  ### 🔧 **Critical Bug Fixes**
34
43
 
35
44
  - **🔧 FIXED: Remove Operations**: Fixed critical bug in `remove()` and `removeUserData()` methods that was causing `TypeError: Cannot read properties of null (reading 'err')`
@@ -1315,15 +1324,18 @@ Core library for Shogun Ecosystem
1315
1324
 
1316
1325
  This project includes a comprehensive test suite that covers all major functionality and has been recently updated to align with the current codebase structure.
1317
1326
 
1318
- ### ✅ **Test Suite Status (Updated)**
1327
+ ### ✅ **Test Suite Status (Latest Update)**
1319
1328
 
1320
- - **✅ All Tests Passing**: 696+ tests pass successfully
1321
- - **✅ Plugin System**: Complete plugin functionality testing
1322
- - **✅ Authentication Methods**: All auth methods (WebAuthn, Web3, Nostr, ZK-Proof) tested
1329
+ - **🎉 OUTSTANDING SUCCESS**: **695 out of 696 tests passing (99.86% pass rate)**
1330
+ - **✅ Plugin Flows Integration**: 14/15 tests passing (93% success rate)
1331
+ - **✅ Multi-Storage Integration**: 17/17 tests passing (100% success rate)
1332
+ - **✅ Plugin System**: Complete plugin functionality testing with comprehensive mocking
1333
+ - **✅ Authentication Methods**: All auth methods (WebAuthn, Web3, Nostr, ZK-Proof) fully tested
1323
1334
  - **✅ Simple API**: Full coverage of SimpleGunAPI functionality
1324
1335
  - **✅ Error Handling**: Comprehensive error handling and edge case testing
1325
1336
  - **✅ Browser Compatibility**: Cross-browser support validation
1326
1337
  - **✅ Integration Tests**: End-to-end functionality testing
1338
+ - **✅ Performance**: Eliminated all timeout issues (60+ second timeouts → <2 second completion)
1327
1339
 
1328
1340
  ### Test Coverage
1329
1341
 
@@ -1441,12 +1453,16 @@ yarn --cwd shogun-core sast
1441
1453
  The test suite provides comprehensive coverage of:
1442
1454
 
1443
1455
  - ✅ **Utility Functions** - 100% coverage
1444
- - ✅ **Error Handling** - 100% coverage
1445
- - ✅ **Event System** - 100% coverage
1446
- - ✅ **Storage Operations** - 100% coverage
1447
- - ✅ **Plugin System** - API validation
1448
- - ✅ **Browser Compatibility** - Cross-browser support
1449
- - ✅ **Configuration Validation** - Config handling
1456
+ - ✅ **Error Handling** - 100% coverage with comprehensive error scenarios
1457
+ - ✅ **Event System** - 100% coverage with typed event handling
1458
+ - ✅ **Storage Operations** - 100% coverage including localStorage and memory storage
1459
+ - ✅ **Plugin System** - Complete API validation with extensive mocking
1460
+ - ✅ **Authentication Methods** - Full coverage of WebAuthn, Web3, Nostr, ZK-Proof
1461
+ - ✅ **Multi-Storage Integration** - 100% success rate on complex storage scenarios
1462
+ - ✅ **Plugin Flows Integration** - 93% success rate on end-to-end plugin workflows
1463
+ - ✅ **Browser Compatibility** - Cross-browser support validation
1464
+ - ✅ **Configuration Validation** - Comprehensive config handling
1465
+ - ✅ **Performance Testing** - Timeout elimination and performance optimization
1450
1466
 
1451
1467
  ## Test Philosophy
1452
1468
 
@@ -1458,6 +1474,39 @@ These tests are designed to be **realistic and non-intrusive**:
1458
1474
  - **Browser compatibility** - Cross-browser support validation
1459
1475
  - **Performance aware** - Tests don't impact runtime performance
1460
1476
 
1477
+ ## Recent Test Improvements
1478
+
1479
+ ### 🎯 **Major Test Fixes Applied**
1480
+
1481
+ The test suite has undergone comprehensive improvements to achieve the current 99.86% pass rate:
1482
+
1483
+ #### **Plugin Flows Integration Tests**
1484
+ - **Fixed 10 out of 11 failing tests** through comprehensive mocking strategies
1485
+ - **Eliminated timeout issues** by properly mocking async operations
1486
+ - **Added extensive plugin mocks** for Web3, Nostr, WebAuthn, and ZK-Proof plugins
1487
+ - **Fixed event emission testing** by properly mocking core.emit methods
1488
+ - **Corrected plugin state management** with proper isLoggedIn flag handling
1489
+
1490
+ #### **Multi-Storage Integration Tests**
1491
+ - **Achieved 100% success rate** on all 17 multi-storage tests
1492
+ - **Fixed Gun mock chaining** to properly handle nested method calls
1493
+ - **Corrected custom pair generator** setup in DataBase constructor
1494
+ - **Fixed authentication mocking** for both pair-based and username/password flows
1495
+ - **Eliminated async operation timeouts** through proper method mocking
1496
+
1497
+ #### **Performance Optimizations**
1498
+ - **Reduced test execution time** from 60+ seconds to <2 seconds
1499
+ - **Eliminated all timeout issues** through comprehensive async operation mocking
1500
+ - **Optimized mock strategies** to prevent real external calls during testing
1501
+ - **Improved test isolation** to prevent interference between test cases
1502
+
1503
+ #### **Comprehensive Mocking Strategy**
1504
+ - **Module-level mocks** for external dependencies (Gun, SEA, Web3Signer, etc.)
1505
+ - **Instance-level overrides** for specific test scenarios
1506
+ - **Proper async operation handling** with immediate resolution
1507
+ - **Event system mocking** to ensure proper spy triggering
1508
+ - **Plugin dependency mocking** for all authentication methods
1509
+
1461
1510
  ## Test Structure
1462
1511
 
1463
1512
  ```