UNPKG

@mamdouh-aboammar/dev-sentinel

Version:

๐Ÿ›ก๏ธ Enterprise-grade observability SDK for React applications. Real-time diagnostics with 14+ specialized packs: Network Intelligence, Security Guards, Privacy Protection, Code Quality Analysis, Device Monitoring, and more.

308 lines (253 loc) โ€ข 9.3 kB
# Changelog All notable changes to Dev-Sentinel will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [1.0.0] - 2025-12-03 ### ๐ŸŽ‰ Initial Public Release The first stable release of Dev-Sentinel - Enterprise-grade observability SDK for React applications. ### โœจ Added #### Core Features - **Unified Logging API**: `devSentinel.log()` with support for 14+ event types - **Multi-Store Architecture**: Separate stores for different diagnostic categories - **IndexedDB Persistence**: Automatic storage and hydration of logs - **Reactive Subscriptions**: Real-time event streaming with `subscribe()` methods - **Privacy-First Redaction**: Built-in PII and sensitive data protection - **Development-Only Execution**: Zero production footprint with `import.meta.env.DEV` guards #### ๐ŸŒ Network Intelligence Pack - Endpoint health tracking and status monitoring - API contract validation with schema enforcement - Network waterfall visualization - Critical path tracking for essential requests - Retry pattern analysis and silent failure detection - Request/response anomaly detection - `devFetch` wrapper with automatic diagnostics #### ๐Ÿงช Testing Pack - Runtime test intelligence and flakiness detection - Race condition identification - Non-deterministic behavior tracking - Coverage gap hints - Mockability analysis for components - Unreachable state detection #### ๐ŸŽจ Design Pack - Layout shift detection (CLS-like monitoring) - Responsive breakpoint analysis (xs/sm/md/lg/xl) - WCAG 2.1 color contrast validation - UI performance monitoring (long tasks, forced reflows) - Visual regression detection with snapshot comparison - Layout thrashing detection #### ๐Ÿ” Secure-UI Anti-Fraud Pack - Suspicious input sequence detection - Autofill and hidden field abuse monitoring - Brute-force attack indicators - Fake overlay/clickjacking detection - Click injection pattern recognition - Session fraud scoring #### ๐Ÿ”’ Privacy Guard Pack - Console PII leak detection - Storage PII issue monitoring - Analytics data leak prevention - Over-posting detection (excessive data in API calls) - Object logging abuse tracking - Session-based privacy scoring #### ๐Ÿ“ฑ Device & Environment Pack - CPU throttling detection - Memory pressure monitoring - Battery saver mode detection - GPU performance tracking - Network mode detection (low bandwidth) - OS-level animation reduction detection - WebView environment identification #### ๐Ÿง  Code Smell Pack - AI-assisted code quality analysis - Duplicate logic detection - Deeply nested component identification - Magic number flagging - Props explosion warnings - Abstraction candidate suggestions - Component anti-pattern detection - State misuse identification - Global state abuse tracking #### ๐Ÿ”„ Regression Pack - Novel issue detection (never seen before) - Issue fingerprinting for tracking - Regression timeline snapshots - Frequency spike detection - Issue reintroduction alerts - Historical comparison #### ๐ŸŽจ UI Components - **DevPanel**: Beautiful floating panel with tabbed interface - Real-time event streaming with filtering - JSON export functionality - Syntax-highlighted payload inspection - Dark mode support - Per-pack dedicated tabs: - Network Intelligence - Endpoint Health - Contract Errors - Waterfall Analysis - Critical Path - Testing Insights - Flakiness Report - Coverage Hints - Layout Stability - Responsive Diagnostics - Accessibility (Color & Readability) - UI Performance - Visual Regression - Secure-UI - Auth Abuse - Click Injection - Privacy Guard - Data Minimization - Analytics Leak - Device Diagnostics - Environment Health - Code Smell - Refactoring Suggestions - Regression - Novel Issues - Regression Timeline #### ๐Ÿ“š Type System - Full TypeScript support with comprehensive type definitions - Exported types for all event categories: - `NetworkEventType` - `TestingEventType` - `DesignEventType` - `SecureUiEventType` - `PrivacyEventType` - `DeviceEventType` - `EnvironmentEventType` - `CodeSmellEventType` - `RegressionEventType` - Type-safe payload structures - Generic `StoredLog` interface #### ๐Ÿ› ๏ธ Developer Experience - React integration with `DevSentinelProvider` - `DevSentinelErrorBoundary` for error tracking - `useDevSentinel` hook for component-level access - Orchestrator API for lifecycle management - Feature configuration system - Modular pack initialization ### ๐Ÿ—๏ธ Architecture - **Modular Store System**: Each diagnostic category has its own store - **Event Normalization**: Automatic aliasing of legacy event types - **Hydration System**: Smart loading from IndexedDB on init - **Subscription Model**: Pub/sub pattern for real-time updates - **Async-First Design**: All logging operations are non-blocking - **Error Resilience**: Never crashes host app, graceful degradation ### ๐Ÿ“– Documentation - Comprehensive README with quick start guides - Per-pack detailed documentation: - Network Pack Guide - Testing Pack Guide - Secure-UI Pack Guide - Privacy Guard Guide - Code Smell Pack Guide - Device & Environment Guide - Regression Pack Guide - Integration guide for various frameworks - TypeScript usage examples - API reference for all public methods ### ๐Ÿ”ง Configuration - Configurable redaction rules - Customizable pack settings - Feature toggles for selective enablement - Threshold adjustments for detection sensitivity - Custom AI adapters for code smell analysis - Selector configuration for visual regression ### ๐ŸŽฏ Performance - Zero runtime overhead in production - Lazy loading of heavy components - Throttled observers to prevent performance impact - Efficient IndexedDB operations - Memory-conscious event storage - Batched DOM operations via `requestIdleCallback` ### ๐Ÿ”’ Security & Privacy - No external network calls - Local-only data storage - Automatic PII redaction - Configurable sensitive key patterns - Token and credential masking - Privacy-first by default ### ๐Ÿ“ฆ Package - ES Module and CommonJS builds - TypeScript declaration files - Source maps for debugging - Optimized bundle size - Tree-shakeable exports - React 18+ and 19+ peer dependency support - Zod peer dependency for schema validation --- ## [Unreleased] ### Planned Features #### ๐Ÿ”‘ Auth & Session Pack (Coming Soon) - Invalid token flow detection - Silent logout issue tracking - Token refresh race condition detection - UI/data mismatch monitoring - Redirect loop detection - Multi-tab session desync #### ๐Ÿค– AI Agent Pack (Coming Soon) - Repeated LLM call detection - Prompt hallucination pattern tracking - Large context overhead monitoring - Assistant reply validation - Inconsistent agent state detection - Duplicate task identification #### ๐Ÿ“ˆ SaaS Metrics Pack (Coming Soon) - Funnel blockage detection - User interaction friction tracking - Confusing onboarding step identification - Abandoned flow detection - Time-to-value anomaly tracking #### โ™ฟ A11y Interaction Pack (Coming Soon) - Rage clicking detection - Dead tap identification - Lost focus position tracking - Small tap target warnings #### ๐Ÿšฉ Feature Flag Pack (Coming Soon) - Flag misconfiguration detection - Conflicting flag identification - Inconsistent behavior across tabs - Mid-session flag change tracking - Unguarded experimental feature warnings #### ๐Ÿงฉ Business Logic Drift Pack (Future) - Conditional logic drift detection - Rule override tracking - Priority conflict identification - Rule execution order validation #### ๐Ÿ’พ Client Persistence Health Pack (Future) - IndexedDB issue monitoring - LocalStorage problem detection - Cache health tracking - Stale data identification - Schema mismatch detection - Rehydration issue tracking #### ๐Ÿข Micro-Frontend Pack (Future) - Cross-module conflict detection - Duplicate dependency tracking - Shared state conflict monitoring - Module boundary validation - Component override tracking --- ## Version History ### Version Naming Convention Dev-Sentinel follows [Semantic Versioning](https://semver.org/): - **MAJOR**: Breaking API changes - **MINOR**: New features, backwards compatible - **PATCH**: Bug fixes, backwards compatible --- ## Migration Guides ### From 0.x to 1.0 1. **Package name change**: Update imports from `dev-sentinel` to `@prepilot/dev-sentinel` 2. **Event type normalization**: Legacy design event types are automatically aliased 3. **Store separation**: Network, CodeSmell, SecureUi, Privacy, Device, and Environment events now have dedicated stores 4. **Hydration**: Call pack-specific hydration methods: `hydrateNetworkFromDb()`, `hydrateCodeSmellFromDb()`, etc. 5. **Subscriptions**: Use pack-specific subscription methods: `subscribeNetwork()`, `subscribeCodeSmell()`, etc. --- ## Support - ๐Ÿ› [Report Issues](https://github.com/prepilot/dev-sentinel/issues) - ๐Ÿ’ฌ [Discussions](https://github.com/prepilot/dev-sentinel/discussions) - ๐Ÿ“– [Documentation](https://github.com/prepilot/dev-sentinel) --- **Note**: This is the first stable public release. Previous versions (0.x) were internal development iterations.