feat(schema-manager): Add Schema Management module and expose it in public API; update README to mark Phase 3 complete and move priorities to Phase 4

This commit is contained in:
2025-11-29 18:42:50 +00:00
parent d39abaf6c6
commit 1510803c92
8 changed files with 1901 additions and 7 deletions

View File

@@ -42,7 +42,7 @@
- Cache hit/miss statistics
- Example at `ts/examples/kv/kv-store-example.ts`
**Phase 3: Advanced Features**
**Phase 3: Advanced Features (100%)** - Complete!
- **Plugin Architecture (100%)** - Extensible request/response middleware:
- Plugin lifecycle hooks (beforeRequest, afterResponse, onError)
- Plugin priority and execution ordering
@@ -58,6 +58,30 @@
- Shared context between plugins
- Timeout protection for plugin hooks
- Example at `ts/examples/plugins/plugin-example.ts`
- **Transaction Support (100%)** - ACID-like distributed transactions:
- Optimistic concurrency control (seq_no/primary_term)
- Automatic rollback with compensation operations
- Savepoints for partial rollback
- Conflict detection and configurable resolution (retry, abort, skip, force)
- Multi-document atomic operations
- Isolation levels (read_uncommitted, read_committed, repeatable_read)
- Transaction callbacks (onBegin, onCommit, onRollback, onConflict)
- Transaction statistics and monitoring
- Timeout with automatic cleanup
- Example at `ts/examples/transactions/transaction-example.ts`
- **Schema Management (100%)** - Index mapping management and migrations:
- Index creation with mappings, settings, and aliases
- Schema validation before apply
- Versioned migrations with history tracking
- Schema diff and comparison (added/removed/modified fields)
- Breaking change detection
- Index templates (composable and legacy)
- Component templates
- Alias management with filters
- Dynamic settings updates
- Migration rollback support
- Dry run mode for testing
- Example at `ts/examples/schema/schema-example.ts`
### Query Builder Usage
@@ -81,11 +105,10 @@ const stats = await createQuery<Product>('products')
.execute();
```
### Next Priorities
1. **Transaction Support** (Phase 3) - Distributed transactions across multiple documents
2. **Schema Management** (Phase 3) - Index mapping management and migrations
3. **Comprehensive Test Suite** (Phase 4) - Full test coverage
4. **Migration Guide** (Phase 4) - Guide from v2 to v3
### Next Priorities (Phase 4)
1. **Comprehensive Test Suite** - Full test coverage for all modules
2. **Migration Guide** - Guide from v2 to v3 API
3. **README Update** - Update main README with new v3 API documentation
### Structure
- Single `ts/` directory (no parallel structures)