Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>

This commit is contained in:
Matt Bruce 2026-01-14 17:54:10 -06:00
parent fbfc1af84a
commit 08aa488eec

View File

@ -17,43 +17,62 @@ StorageRouter (main entry point)
```mermaid
flowchart TD
%% Vertical Stack Architecture
App(["<br/>📱 <b>APP / FEATURE LAYER</b><br/>"])
%% Main Architecture Stack
App(["📱 <b>APP / FEATURE LAYER</b>"])
Config["<br/>⚙️ <b>GLOBAL CONFIGURATION</b><br/>Encryption, Sync, & App Group IDs<br/>"]
SR["<br/>🔀 <b>STORAGE ROUTER</b><br/>(Migration & Orchestration Engine)<br/>"]
subgraph Helpers ["🛠️ <b>INTERNAL HELPER ACTORS</b>"]
direction TB
KH["Keychain & File Helpers"]
UH["UserDefaults & Sync Helpers"]
EH["🔐 Encryption Service"]
subgraph Config ["⚙️ GLOBAL CONFIGURATION"]
direction LR
SC["StorageConfig"]
EC["EncryptionConfig"]
FC["FileStorageConfig"]
SYC["SyncConfig"]
end
subgraph Storage ["💾 <b>HARDWARE STORAGE</b>"]
SR["🔀 <b>STORAGE ROUTER</b><br/>(Migration & Orchestration Engine)"]
subgraph Helpers ["🛠️ INTERNAL HELPER ACTORS"]
direction TB
KC[("🗝️ SECURE KEYCHAIN")]
FS[("📁 LOCAL FILE SYSTEM")]
UD[("⚙️ USER DEFAULTS")]
subgraph Logic ["Core Logic"]
direction LR
KH["KeychainHelper"]
FH["FileHelper"]
UH["UserDefaultsHelper"]
end
EH["🔐 EncryptionHelper"]
SH["🔄 SyncHelper"]
end
%% Main Flow
App -->|StorageKey| Config
Config --> SR
subgraph Storage ["💾 HARDWARE STORAGE"]
direction LR
KC[("🗝️ Keychain")]
FS[("📁 File System")]
UD[("⚙️ UserDefaults")]
WatchOS["⌚ Apple Watch"]
end
%% Flow Relationships
App -->|StorageKey| SR
SR -.->|Resolves| Config
SR ==>|1. Routing Logic| Helpers
Helpers ==>|2. Persistence| Storage
%% Migration Loop
Storage -.->|<b>3. AUTOMATIC MIGRATION</b>| SR
KH --> KC
FH --> FS
UH --> UD
SH -->|WatchConnectivity| WatchOS
%% Styling for Legibility
KH --- EH
FH --- EH
%% Migration Logic
Storage -.->|<b>2. AUTOMATIC MIGRATION</b>| SR
%% Styling
style App fill:#fff,stroke:#333,stroke-width:2px
style Config fill:#fff,stroke:#333,stroke-dasharray: 5 5
style SR fill:#e1f5fe,stroke:#01579b,stroke-width:4px
style Storage fill:#f0f7ff,stroke:#0052cc,stroke-width:3px
style Helpers fill:#f9f9f9,stroke:#666,stroke-width:2px
style Config fill:#f9f9f9,stroke:#999,stroke-dasharray: 5 5
style SR fill:#e1f5fe,stroke:#01579b,stroke-width:3px
style Storage fill:#f0f7ff,stroke:#0052cc,stroke-width:2px
style Helpers fill:#fff,stroke:#666
```
## What Ships in the Package