diff --git a/conductor/tracks/deep_dive_docs_20260316/index.md b/conductor/tracks/deep_dive_docs_20260316/index.md deleted file mode 100644 index aea19983d..000000000 --- a/conductor/tracks/deep_dive_docs_20260316/index.md +++ /dev/null @@ -1,5 +0,0 @@ -# Track deep_dive_docs_20260316 Context - -- [Specification](./spec.md) -- [Implementation Plan](./plan.md) -- [Metadata](./metadata.json) \ No newline at end of file diff --git a/conductor/tracks/deep_dive_docs_20260316/metadata.json b/conductor/tracks/deep_dive_docs_20260316/metadata.json deleted file mode 100644 index 919480970..000000000 --- a/conductor/tracks/deep_dive_docs_20260316/metadata.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "track_id": "deep_dive_docs_20260316", - "type": "chore", - "status": "new", - "created_at": "2026-03-16T12:00:00Z", - "updated_at": "2026-03-16T12:00:00Z", - "description": "do a deep dive of project docs and plans in /docs - verify against actual project/codebase state, then validate against modern best practices for android, kotlin, kmp, and the dependencies used. be thorough - check all the major dependencies. Update docs and plans accordingly." -} \ No newline at end of file diff --git a/conductor/tracks/deep_dive_docs_20260316/plan.md b/conductor/tracks/deep_dive_docs_20260316/plan.md deleted file mode 100644 index f5f58888a..000000000 --- a/conductor/tracks/deep_dive_docs_20260316/plan.md +++ /dev/null @@ -1,19 +0,0 @@ -# Implementation Plan: Deep Dive & Validation of Project Docs & Plans - -## Phase 1: Audit & Discovery [checkpoint: 105763b] -- [x] Task: Audit Gradle dependencies (`libs.versions.toml`) against 2026 KMP best practices (Koin, Compose, Navigation 3, etc.). baed3d6 -- [x] Task: Analyze Core Logic (`core:*`) and platform modules (Android, Desktop) for architectural alignment (MVI/Shared ViewModels). baed3d6 -- [x] Task: Review current UI and feature module implementations for Compose Multiplatform standard adherence. baed3d6 -- [x] Task: Evaluate testing patterns, coverage, and the use of shared test doubles (`core:testing`). baed3d6 -- [x] Task: Compile a list of discrepancies between current documentation/plans and the actual codebase. baed3d6 -- [x] Task: Conductor - User Manual Verification 'Phase 1: Audit & Discovery' (Protocol in workflow.md) 105763b - -## Phase 2: Documentation Updates -- [x] Task: Update `/docs` and root-level guides (e.g., `GEMINI.md`, `kmp-status.md`, `roadmap.md`) to reflect the current, verified codebase state. baed3d6 -- [x] Task: Add explicit documentation for areas where the codebase diverges from documented best practices (flagging for future refactoring). baed3d6 -- [ ] Task: Conductor - User Manual Verification 'Phase 2: Documentation Updates' (Protocol in workflow.md) - -## Phase 3: Plan Adjustment -- [ ] Task: Create new, actionable tasks in the project's main `plan.md` to address the flagged discrepancies (e.g., refactoring non-compliant Koin modules, updating deprecated APIs). -- [ ] Task: Review and finalize the overall project roadmap and status based on the audit findings. -- [ ] Task: Conductor - User Manual Verification 'Phase 3: Plan Adjustment' (Protocol in workflow.md) \ No newline at end of file diff --git a/conductor/tracks/deep_dive_docs_20260316/spec.md b/conductor/tracks/deep_dive_docs_20260316/spec.md deleted file mode 100644 index baa50bda7..000000000 --- a/conductor/tracks/deep_dive_docs_20260316/spec.md +++ /dev/null @@ -1,19 +0,0 @@ -# Specification: Deep Dive & Validation of Project Docs & Plans - -## Overview -This track involves a comprehensive review and deep dive into the project's documentation (`/docs`, `GEMINI.md`, etc.) and plans. The goal is to verify the documented state against the actual Kotlin Multiplatform (KMP) codebase and validate it against modern 2026 KMP and Android best practices. The outcome will be updated documentation reflecting the current state and flagged/planned changes for areas not following best practices. - -## Functional Requirements -- **Codebase Verification:** Analyze all major areas including Core Logic (`core:*`), UI & Features (Compose Multiplatform), Dependencies (Gradle version catalogs), and Platform-specific implementations (Android, Desktop). -- **Best Practice Validation:** Evaluate the codebase against modern standards, specifically focusing on Architecture (MVI/Shared ViewModels), Navigation (Navigation 3), Dependency Injection (Koin Annotations K2), and Testing patterns. -- **Documentation Update:** Modify existing documentation and plans to accurately reflect the current state of the codebase and dependencies. -- **Refactoring Proposals:** Identify and flag code or architectural decisions that deviate from best practices, outlining necessary refactoring steps in the project's plans. - -## Acceptance Criteria -- All documentation in `/docs` and root-level guides accurately reflect the current codebase. -- A comprehensive audit of major dependencies has been performed and validated against 2026 KMP standards. -- Discrepancies between the codebase and best practices are clearly flagged and actionable tasks are added to the project plans. -- The `plan.md` reflects the updated status and any new tasks generated from the audit. - -## Out of Scope -- Direct refactoring or modification of the actual Kotlin/Android codebase during this specific track (this track focuses on documentation, planning, and flagging). \ No newline at end of file diff --git a/docs/roadmap.md b/docs/roadmap.md index 96c28a0aa..b1f8a2a9f 100644 --- a/docs/roadmap.md +++ b/docs/roadmap.md @@ -85,10 +85,13 @@ These items address structural gaps identified in the March 2026 architecture re ## Medium-Term Priorities (60 days) -1. **App module thinning** — 63 files remaining (down from 90). Extracted ChannelViewModel, NodeMapViewModel, NodeContextMenu, EmptyDetailPlaceholder to shared modules. Remaining: extract service/worker/radio files from `app` to `core:service/androidMain` and `core:network/androidMain` +1. **App module thinning** — 63 files remaining (down from 90). Extracted ChannelViewModel, NodeMapViewModel, NodeContextMenu, EmptyDetailPlaceholder to shared modules. + - **Next:** Extract remaining 5 ViewModels: `AndroidSettingsViewModel`, `AndroidRadioConfigViewModel`, `AndroidDebugViewModel`, `AndroidMetricsViewModel`, `UIViewModel`. + - **Next:** Extract service/worker/radio files from `app` to `core:service/androidMain` and `core:network/androidMain`. 2. **Serial/USB transport** — direct radio connection on Desktop via jSerialComm 3. **MQTT transport** — cloud relay operation (KMP, benefits all targets) -4. **Desktop ViewModel auto-wiring** — ✅ Done: ensured Koin K2 Compiler Plugin generates ViewModel modules for JVM target; eliminated manual wiring in `DesktopKoinModule` +4. **Evaluate KMP-native mocking** — Evaluate `mockative` or similar to replace `mockk` in `commonMain` of `core:testing` for iOS readiness. +5. **Desktop ViewModel auto-wiring** — ✅ Done: ensured Koin K2 Compiler Plugin generates ViewModel modules for JVM target; eliminated manual wiring in `DesktopKoinModule` 5. **KMP charting** — ✅ Done: Vico charts migrated to `feature:node/commonMain` using KMP artifacts; desktop wires them directly 6. **Navigation contract extraction** — ✅ Done: shared `TopLevelDestination` enum in `core:navigation`; icon mapping in `core:ui`; parity tests in place. Both shells derive from the same source of truth. 7. **Dependency stabilization** — track stable releases for CMP, Koin, Lifecycle, Nav3