@affectively/aeon-flux 1.0.0 → 1.1.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/CHANGELOG.md ADDED
@@ -0,0 +1,75 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [0.3.0] - 2025-02-07
9
+
10
+ ### Added
11
+
12
+ #### Runtime Package (`@aeon-pages/runtime`)
13
+
14
+ - **Offline Queue System**
15
+ - `offline/types.ts` - Type definitions for offline operations, queue config, sync, conflicts, network state
16
+ - `offline/encryption.ts` - AES-256-GCM encryption using Web Crypto API with UCAN or session-based key derivation
17
+ - `offline/encrypted-queue.ts` - Priority queuing (high/normal/low) with 50MB capacity, automatic compaction, retry logic
18
+
19
+ - **Sync Coordination**
20
+ - `sync/coordinator.ts` - Network state tracking, bandwidth profiling, adaptive batch sizing
21
+ - `sync/conflict-resolver.ts` - Conflict detection with resolution strategies (local-wins, remote-wins, merge, last-modified, manual)
22
+
23
+ - **Push Notifications**
24
+ - `service-worker-push.ts` - Push notification handler with background sync support
25
+ - Integrated push handlers into main service worker
26
+
27
+ - **Durable Object Sync Endpoints**
28
+ - `POST /sync-queue` - Receive offline queue batch
29
+ - `GET /queue-status` - Return pending operations and conflicts
30
+ - `POST /resolve-conflict` - Manual conflict resolution
31
+
32
+ - **Extended Configuration Types**
33
+ - `PushOptions` - Push notification configuration
34
+ - `InstallOptions` - PWA install prompt configuration
35
+ - Enhanced `OfflineOptions` with encryption, sync, and storage sub-configs
36
+
37
+ #### React Package (`@aeon-pages/react`)
38
+
39
+ - **Hooks**
40
+ - `useNetworkState` - Network state and bandwidth monitoring
41
+ - `useConflicts` - Conflict management with resolution methods
42
+
43
+ - **Components**
44
+ - `InstallPrompt` - PWA install prompt with iOS detection (+ `useInstallPrompt` hook)
45
+ - `PushNotifications` - Push subscription management (+ `usePushNotifications` hook)
46
+ - `OfflineDiagnostics` - Composable diagnostic panels for network, service worker, cache, queue, and conflicts
47
+
48
+ ### Tests
49
+
50
+ - Added comprehensive test suites for all new modules:
51
+ - `offline/encryption.test.ts` - 20 tests
52
+ - `offline/encrypted-queue.test.ts` - 35 tests
53
+ - `sync/conflict-resolver.test.ts` - 38 tests
54
+ - `sync/coordinator.test.ts` - 33 tests
55
+
56
+ ## [0.2.0] - 2025-01-15
57
+
58
+ ### Added
59
+
60
+ - Initial release of core framework
61
+ - Page session management with Durable Objects
62
+ - Real-time collaboration via WebSocket
63
+ - CRDT-based conflict resolution
64
+ - Service worker with total preload strategy
65
+ - React integration with hooks and components
66
+ - CLI for project scaffolding and builds
67
+ - Build system with pre-rendering support
68
+
69
+ ## [0.1.0] - 2025-01-01
70
+
71
+ ### Added
72
+
73
+ - Project initialization
74
+ - Basic architecture design
75
+ - Proof of concept implementation
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@affectively/aeon-flux",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
4
  "description": "The CMS IS the website. Collaborative page framework with CRDT-based flux state and zero-CLS skeleton rendering.",
5
5
  "type": "module",
6
6
  "workspaces": [