From a0eb590baa8824ce0012083c4db67a4dc0039a3b Mon Sep 17 00:00:00 2001 From: MarekWo Date: Sun, 1 Mar 2026 06:56:32 +0100 Subject: [PATCH] chore(v2): Add meshcore dependency and gitignore docs/v2 - Add meshcore>=2.2.0 for direct device communication (Phase 0.1) - Exclude docs/v2/ from git (local working notes) Co-Authored-By: Claude Opus 4.6 --- .gitignore | 1 + docs/v2/STATUS.md | 42 ------------------------------------------ requirements.txt | 3 +++ 3 files changed, 4 insertions(+), 42 deletions(-) delete mode 100644 docs/v2/STATUS.md diff --git a/.gitignore b/.gitignore index bbb113d..f7b1f9f 100644 --- a/.gitignore +++ b/.gitignore @@ -103,6 +103,7 @@ docs/TEST-PLAN-Contact-Management-v2.md docs/github-discussion-*.md docs/github-response-spaces-in-device-name.md docs/check-compat-howto.md +docs/v2/ docs/PRD-mc-webui-2.md docs/PRD-mc-webui-2-en.html docs/PRD-mc-webui-2-pl.html diff --git a/docs/v2/STATUS.md b/docs/v2/STATUS.md deleted file mode 100644 index 04109d6..0000000 --- a/docs/v2/STATUS.md +++ /dev/null @@ -1,42 +0,0 @@ -# mc-webui v2 — Development Status - -## Current Status: Planning Phase 0 - -**Last updated:** 2026-02-28 - -## Completed - -### PRD (Product Requirements Document) -- Created comprehensive PRD with architecture decisions -- Resolved all 5 open questions: - 1. **Console:** meshcli-compatible syntax with structured output (tables/cards) - 2. **TCP transport:** YES — dual transport via `MeshCore.create_tcp()` (PR #22) - 3. **Multi-device:** YES — `DeviceRegistry` pattern, Phase 4 - 4. **WebSocket push:** YES — Flask-SocketIO `/chat` namespace replaces polling - 5. **Backup:** YES — built-in SQLite backup with API endpoint -- Confirmed Raspberry Pi 3+ compatibility (lower resource usage than v1) -- Documents: - - `docs/PRD-mc-webui-2.md` (source, 713 lines) - - `docs/PRD-mc-webui-2-en.html` (shareable English) - - `docs/PRD-mc-webui-2-pl.html` (shareable Polish) - -### Key Architecture Decisions -- **Branch strategy:** In-place evolution on `v2` branch (not a new repo) -- **Database:** SQLite with WAL mode (replacing JSONL files) -- **Container:** Single container (replacing two-container bridge) -- **Framework:** Flask kept (with Flask-SocketIO added) -- **Device communication:** `meshcore` Python library (>=2.2.0) — direct async API - -## Development Phases - -| Phase | Name | Status | -|-------|------|--------| -| 0 | Infrastructure & Foundation | **Planning** | -| 1 | Direct Device Communication | Pending | -| 2 | Feature Parity + Enhancements | Pending | -| 3 | Advanced Features | Pending | -| 4 | Multi-device & Scaling | Pending | - -## Next Steps -- Create detailed implementation plan for Phase 0 -- Phase 0 scope: v2 branch, SQLite schema, Database class, project structure, env config diff --git a/requirements.txt b/requirements.txt index c667e26..2d7e583 100644 --- a/requirements.txt +++ b/requirements.txt @@ -30,3 +30,6 @@ pycryptodome==3.21.0 flask-socketio==5.3.6 python-socketio==5.10.0 python-engineio==4.8.1 + +# v2: Direct MeshCore device communication (replaces bridge subprocess) +meshcore>=2.2.0