mirror of
https://github.com/meshtastic/Meshtastic-Android.git
synced 2026-04-20 22:23:37 +00:00
chore(conductor): Add new track 'migrate the fully featured debug panel to common source for use in other targets, wire it up in desktop'
This commit is contained in:
parent
4eb711ce58
commit
34673c2119
5 changed files with 61 additions and 0 deletions
|
|
@ -2,3 +2,7 @@
|
|||
|
||||
This file tracks all major tracks for the project. Each track has its own detailed plan in its respective folder.
|
||||
|
||||
---
|
||||
|
||||
- [ ] **Track: migrate the fully featured debug panel to common source for use in other targets, wire it up in desktop**
|
||||
*Link: [./tracks/migrate_debug_panel_20260319/](./tracks/migrate_debug_panel_20260319/)*
|
||||
5
conductor/tracks/migrate_debug_panel_20260319/index.md
Normal file
5
conductor/tracks/migrate_debug_panel_20260319/index.md
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
# Track migrate_debug_panel_20260319 Context
|
||||
|
||||
- [Specification](./spec.md)
|
||||
- [Implementation Plan](./plan.md)
|
||||
- [Metadata](./metadata.json)
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
{
|
||||
"track_id": "migrate_debug_panel_20260319",
|
||||
"type": "feature",
|
||||
"status": "new",
|
||||
"created_at": "2026-03-19T00:00:00Z",
|
||||
"updated_at": "2026-03-19T00:00:00Z",
|
||||
"description": "migrate the fully featured debug panel to common source for use in other targets, wire it up in desktop"
|
||||
}
|
||||
20
conductor/tracks/migrate_debug_panel_20260319/plan.md
Normal file
20
conductor/tracks/migrate_debug_panel_20260319/plan.md
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
# Implementation Plan: Debug Panel KMP Migration
|
||||
|
||||
## Phase 1: Analysis and Relocation
|
||||
- [ ] Task: Locate all source files for the Android Debug Panel (UI, ViewModels, States).
|
||||
- [ ] Task: Move these files from the Android-specific source sets (e.g., `feature/settings/src/androidMain`) into `feature/settings/src/commonMain`.
|
||||
- [ ] Task: Conductor - User Manual Verification 'Phase 1: Analysis and Relocation' (Protocol in workflow.md)
|
||||
|
||||
## Phase 2: Adaptation to KMP
|
||||
- [ ] Task: Resolve compilation errors by removing Android-specific imports (`android.*`, `java.*`).
|
||||
- [ ] Task: Migrate Android Jetpack Compose imports (`androidx.compose`) to Compose Multiplatform equivalents (`org.jetbrains.compose.*` or ensuring the standard Multiplatform aliases are used).
|
||||
- [ ] Task: Ensure the Debug Panel ViewModel uses the multiplatform `androidx.lifecycle.ViewModel`.
|
||||
- [ ] Task: Abstract any necessary platform-specific logging or hardware interactions using `expect`/`actual` or KMP interfaces.
|
||||
- [ ] Task: Write or migrate corresponding unit tests to `commonTest`.
|
||||
- [ ] Task: Conductor - User Manual Verification 'Phase 2: Adaptation to KMP' (Protocol in workflow.md)
|
||||
|
||||
## Phase 3: Desktop Integration
|
||||
- [ ] Task: Wire the Debug Panel into the Desktop target's settings menu (`DesktopSettingsNavigation.kt`).
|
||||
- [ ] Task: Add DI bindings for the Desktop module if the Debug Panel requires specific dependencies.
|
||||
- [ ] Task: Verify the Debug Panel screen can be opened and navigated to from the Desktop app.
|
||||
- [ ] Task: Conductor - User Manual Verification 'Phase 3: Desktop Integration' (Protocol in workflow.md)
|
||||
24
conductor/tracks/migrate_debug_panel_20260319/spec.md
Normal file
24
conductor/tracks/migrate_debug_panel_20260319/spec.md
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
# Specification: Debug Panel KMP Migration
|
||||
|
||||
## Overview
|
||||
Migrate the existing Android-specific Debug Panel to `commonMain` to enable its use across all Kotlin Multiplatform targets, specifically wiring it up for the Desktop target.
|
||||
|
||||
## Functional Requirements
|
||||
- The complete Android debug panel implementation will be moved and adapted to `commonMain`.
|
||||
- All capabilities from the existing Android debug panel should be preserved and made functional on the Desktop target if possible.
|
||||
- The Debug Panel will be accessible within the Desktop Settings menu, mirroring the Android application's navigation structure.
|
||||
- Any platform-specific system logging (e.g., Logcat) that cannot be migrated will be appropriately abstracted or gracefully degraded.
|
||||
|
||||
## Non-Functional Requirements
|
||||
- **Architecture:** Follow the project's MVI/UDF architecture.
|
||||
- **UI:** Leverage Compose Multiplatform for the shared UI, removing any Android-specific Jetpack Compose dependencies from the core shared UI logic.
|
||||
- **Testing:** Add `commonTest` coverage for the migrated ViewModels and presentation logic.
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] The Debug Panel source code resides in a `commonMain` module (e.g., `feature/settings/src/commonMain`).
|
||||
- [ ] The Debug Panel compiles and runs successfully on both the Android and Desktop targets.
|
||||
- [ ] The Desktop application can navigate to the Debug Panel from the Settings menu.
|
||||
- [ ] Essential debug features (transport logs, packet inspection, etc.) function on the Desktop.
|
||||
|
||||
## Out of Scope
|
||||
- Creating new debug capabilities that do not already exist in the Android implementation.
|
||||
Loading…
Add table
Add a link
Reference in a new issue