|
3 | 3 | # Do NOT edit or remove previous entries — stale state claims cause agent confusion. |
4 | 4 | # Format: ## YYYY-MM-DD — <summary> |
5 | 5 |
|
| 6 | +## 2026-05-23 — Removed deprecated AIDL/API surface and switched Android to direct service control |
| 7 | +- Removed the entire `:core:api` module (AIDL files, published API build config, and module docs) and all build wiring to it (`settings.gradle.kts`, root convention module lists, CI publish/check workflows, `jitpack.yml`). |
| 8 | +- Re-architected Android service interaction away from binder binding: |
| 9 | + - Deleted `MeshServiceClient`, generic `ServiceClient`, AIDL fake/contract test harness, and AIDL exception wrapper utility. |
| 10 | + - Simplified `MeshService` into started-only foreground service (`onBind` now returns null) while preserving orchestrator lifecycle, notification updates, and wake-lock behavior. |
| 11 | + - Kept Android-specific `AndroidRadioControllerImpl` as a thin extension of `DirectRadioControllerImpl` that still restarts `MeshService` after `setDeviceAddress(...)` to preserve address-change behavior. |
| 12 | +- Removed `core:service` dependency on `projects.core.api`; inlined intent/broadcast constants directly in `core/service/Constants.kt` to preserve action/extra string compatibility without the API module. |
| 13 | +- Hardened app manifest by making `MeshService` non-exported and removing the external service intent-filter action. |
| 14 | +- Updated app startup behavior: `MainActivity` now starts `MeshService` in `onStart()` directly instead of creating a binder client. |
| 15 | +- Cleaned active documentation/instructions to remove `core:api`/AIDL references (`README.md`, `core/service/README.md`, `core/model/README.md`, `.github/copilot-instructions.md`, `.skills/project-overview/SKILL.md`, `.skills/testing-ci/SKILL.md`, `codecov.yml`). |
| 16 | +- Validation run succeeded with full baseline command: |
| 17 | + `./gradlew spotlessApply spotlessCheck detekt assembleDebug test allTests -Pci=true --continue` |
| 18 | + |
6 | 19 | ## 2026-05-21 — Upgraded Chirpy to a fully-personalized Live Diagnostic Node & Mesh Assistant |
7 | 20 | - Integrated `NodeRepository` into `GeminiNanoDocAssistant.kt` and the Google AI Koin dependency injection module (`GoogleAiModule.kt`). |
8 | 21 | - Developed a dynamic live-state prompt formatting block within `buildPrompt(...)` that queries current hardware model, firmware version, connection status, GPS capability, channel utilization, airtime, battery level/voltage, user profile long/short names, and total registered mesh peer counts & active online peers directly from `NodeRepository`'s reactive flows. |
|
0 commit comments