From e96aeb4f173d25330d8ff3fe36cf0fa506fec79a Mon Sep 17 00:00:00 2001 From: CyberMind-FR Date: Sat, 14 Mar 2026 07:57:35 +0100 Subject: [PATCH] docs: Update tracking files for Streamlit Launcher - WIP.md: Added Streamlit Launcher to completed items (2026-03-14) - HISTORY.md: Added entry 103 for Streamlit Launcher Co-Authored-By: Claude Opus 4.5 --- .claude/HISTORY.md | 28 +++++++++++++++++++++++++++- .claude/WIP.md | 21 ++++++++++++++++++++- 2 files changed, 47 insertions(+), 2 deletions(-) diff --git a/.claude/HISTORY.md b/.claude/HISTORY.md index 6a2e71b6..5d356453 100644 --- a/.claude/HISTORY.md +++ b/.claude/HISTORY.md @@ -1,6 +1,6 @@ # SecuBox UI & Theme History -_Last updated: 2026-03-13 (Config Vault + System Hardware Report)_ +_Last updated: 2026-03-14 (Streamlit Launcher)_ 1. **Unified Dashboard Refresh (2025-12-20)** - Dashboard received the "sh-page-header" layout, hero stats, and SecuNav top tabs. @@ -4991,3 +4991,29 @@ git checkout HEAD -- index.html - Uses awk for multiline HTML substitutions (sed limitations) - Temp files for dynamic content generation - /proc filesystem based for OpenWrt compatibility + +103. **Streamlit On-Demand Launcher (2026-03-14)** + - New `secubox-app-streamlit-launcher` package for resource optimization + - **Purpose**: Reduce memory usage by starting apps only when accessed + - **Features**: + - On-demand startup (lazy loading) + - Idle shutdown after configurable timeout (default: 30 min) + - Memory pressure management (stop low-priority apps) + - Priority system (1-100, higher = keep longer) + - Always-on mode for critical apps + - **CLI** (`/usr/sbin/streamlit-launcherctl`): + - `daemon` - Background monitor process + - `status/list` - Show app states and idle times + - `start/stop` - Manual app control + - `priority ` - Set priority + - `check/check-memory` - Manual idle/memory checks + - **slforge Integration**: + - `slforge launcher status` - Show launcher status + - `slforge launcher priority ` - Set priority + - `slforge launcher always-on ` - Never auto-stop + - Access tracking on app start + - **Files**: + - `/etc/config/streamlit-launcher` - UCI configuration + - `/etc/init.d/streamlit-launcher` - Procd service + - `/tmp/streamlit-access/` - Access tracking files + - `/usr/share/streamlit-launcher/loading.html` - Cold-start page diff --git a/.claude/WIP.md b/.claude/WIP.md index 3e72bdce..0b3cfd9b 100644 --- a/.claude/WIP.md +++ b/.claude/WIP.md @@ -1,6 +1,6 @@ # Work In Progress (Claude) -_Last updated: 2026-03-13 (Config Vault + System Hardware Report)_ +_Last updated: 2026-03-14 (Streamlit Launcher)_ > **Architecture Reference**: SecuBox Fanzine v3 — Les 4 Couches @@ -8,6 +8,25 @@ _Last updated: 2026-03-13 (Config Vault + System Hardware Report)_ ## Recently Completed +### 2026-03-14 + +- **Streamlit On-Demand Launcher (Complete)** + - New `secubox-app-streamlit-launcher` package + - On-demand startup: Apps start only when first accessed (lazy loading) + - Idle shutdown: Stop apps after configurable timeout (default 30 min) + - Memory management: Force-stop low-priority apps when memory < threshold + - Priority system (1-100): Higher priority = keep running longer + - Always-on mode for critical apps that should never auto-stop + - CLI: `streamlit-launcherctl daemon|status|list|start|stop|priority|check|check-memory` + - Procd daemon with respawn for background monitoring + - Access tracking via touch files in `/tmp/streamlit-access/` + - Loading page template for cold-start user feedback + - Updated `slforge` with launcher integration: + - `slforge launcher status|priority|always-on` commands + - Access tracking on app start + - UCI config: `/etc/config/streamlit-launcher` + - Documentation: Full README with architecture diagram + ### 2026-03-13 - **Configuration Vault System (Complete)**