Commit Graph

6856 Commits

Author SHA1 Message Date
James Rich 47a1450589 Merge remote-tracking branch 'origin/main' into pr/5439/features/lockdown-v2
# Conflicts:
#	core/proto/build.gradle.kts
#	core/proto/src/main/proto
2026-05-30 10:35:16 -05:00
github-actions[bot] 47b62b1300 docs: update CHANGELOG.md (#5669) 2026-05-30 10:12:44 -05:00
James Rich c7fbc6e9d3 fix: address top Crashlytics crashes in beta 2.7.14 (#5672)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-30 15:01:29 +00:00
Ben Meadors ad6144189f fix(takserver): drop CoT the mesh delivers more than once (#5667)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: James Rich <james.a.rich@gmail.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-30 14:05:42 +00:00
James Rich ce01743118 chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#5668)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2026-05-30 13:37:11 +00:00
James Rich 6b440e57e6 repo: Delete symlink
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2026-05-29 20:18:35 -05:00
github-actions[bot] b847c15321 docs: update CHANGELOG.md (#5666) 2026-05-29 16:51:15 -05:00
James Rich df2c7a00bd fix(ci): use fastlane supply for Play promotion with changesNotSentForReview (#5665)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-29 16:45:38 -05:00
github-actions[bot] f2ac9ef10f docs: update CHANGELOG.md (#5664) 2026-05-29 15:44:48 -05:00
James Rich 8ec0f65b69 chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#5660) 2026-05-29 15:43:27 -05:00
github-actions[bot] e28aab4bd8 docs: update CHANGELOG.md (#5656) 2026-05-29 15:40:11 -05:00
Ben Meadors 4888592e07 fix(takserver): emit *:-1:stcp contact endpoint so directed TAK-Talk/GeoChat routes over the mesh (#5661)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-29 15:36:50 -05:00
renovate[bot] da2938f2eb chore(deps): update org.jetbrains.kotlinx:atomicfu to v0.33.0 (#5663) 2026-05-29 15:36:23 -05:00
James Rich 2aa49b08de fix: remove Android Auto manifest entry causing Play Store rejection (#5662)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-29 15:34:10 -05:00
Ben Meadors f92f5d5769 Revert "fix(takserver): emit *:-1:stcp contact endpoint so directed TAK-Talk/GeoChat routes over the mesh; SDK v0.5.1"
This commit landed on main outside the PR process and pins takpacket-sdk 0.5.1, which is not yet published to Maven Central — breaking the build. Reverting to restore a green main; the fix is being re-submitted as a pull request that will merge once 0.5.1 is available on Central.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-29 13:35:47 -05:00
Ben Meadors 0047e4d152 fix(takserver): emit *:-1:stcp contact endpoint so directed TAK-Talk/GeoChat routes over the mesh; SDK v0.5.1
The reconstructed contact endpoint (0.0.0.0:4242:tcp) made ATAK treat mesh peers as directly reachable, so directed messages (TAK-Talk <marti>, GeoChat to a callsign) were delivered to a dead address instead of the Meshtastic server stream and never hit the mesh — broadcast PLI was unaffected. Use the TAK 'reply via this server' endpoint *:-1:stcp (DEFAULT_TAK_ENDPOINT) and bump TAKPacket-SDK to 0.5.1, which fixes the same default in the SDK's CotXmlBuilder.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-29 12:44:34 -05:00
Ben Meadors 8bdb0916b4 feat(takserver): Upgrade TAKPacket-SDK to v0.5.0 and delegate sanitization to SDK (#5658)
Co-authored-by: James Rich <james.a.rich@gmail.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-29 16:30:26 +00:00
James Rich 6646f31f4a chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#5657)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2026-05-29 08:11:08 -05:00
renovate[bot] 0cc18cd7dd chore(deps): update core/proto/src/main/proto digest to dd6c3f8 (#5654) 2026-05-29 08:08:32 -05:00
niccellular 8cab967c14 feat(lockdown): gate toggle on Capabilities.supportsLockdown; soften enable warning
- Add Capabilities.supportsLockdown (atLeast V2_8_0) and gate the security-screen
  lockdown toggle visibility on it, consistent with the other firmware-version
  capability flags. SecurityConfigScreen computes Capabilities from the connected
  node's firmware_version; LockdownModeSetting takes a `supported` flag.
- Reword the enable-lockdown warning: it's reversible (disable with passphrase, or
  a full erase), so drop the inaccurate "permanent/irreversible" framing and the
  red error styling; rename strings lockdown_irreversible_* -> lockdown_enable_*.
- Update CapabilitiesTest for the V2_8_0 floor.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-28 18:36:20 -04:00
github-actions[bot] 61e9bdd159 docs: update CHANGELOG.md (#5653) 2026-05-28 16:47:59 -05:00
github-actions[bot] 90903c50c5 docs: update CHANGELOG.md (#5651) 2026-05-28 16:18:23 -05:00
renovate[bot] 0dad4273d2 chore(deps): update actions/cache action to v5 (#5652) 2026-05-28 16:18:06 -05:00
James Rich 00f3b38f88 fix(ci): cache JetBrains JDK and simplify daemon JVM config (#5650)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-28 15:53:25 -05:00
niccellular 28f92d07f2 test: fix Kotlin/Native test compile for lockdown changes
The CI shard-core allTests job compiles commonTest for the iosSimulatorArm64
target, which surfaced issues the JVM-only local run missed:

- Update stale test fakes to the current interfaces: FakePassphraseStore
  (maxSessionSeconds on savePassphrase) and core/takserver's FakeCommandSender /
  FakeServiceRepository (lockdown send + state members). These predate this
  change but only the Native test compile catches them.
- Rename the DISABLED test: Kotlin/Native rejects commas in backtick names.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-28 16:49:11 -04:00
niccellular d0857ef278 feat(lockdown): runtime enable/disable toggle and DISABLED state
Make lockdown a runtime, user-toggleable setting rather than a one-way lock:

- Thread a `disable` flag through the lockdown send path (CommandSender,
  LockdownCoordinator, MeshActionHandler, RadioController, AIDL, UIViewModel)
  so the app can send LockdownAuth{passphrase, disable=true} to decrypt
  storage and leave lockdown.
- Add LockdownState.Disabled and map LockdownStatus.State.DISABLED; clear the
  stored passphrase and session authorization when a device reports DISABLED
  (or when the user disables it), so we never auto-unlock a disabled device.
- Add a "Lockdown mode" switch to the security settings screen
  (LockdownModeSetting): enable from DISABLED via a set-passphrase dialog with
  a one-time irreversible-SWD warning + explicit confirm; disable from UNLOCKED
  via a passphrase prompt; "Lock now" and session info while unlocked. The
  setting is hidden when the device never reports lockdown_status (non-capable).
- Tests for the disable round-trip and DISABLED mapping; refresh fakes/strings.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-28 16:30:37 -04:00
niccellular 2d6425e078 fix(proto): bump submodule to #927 (disable/DISABLED) and drop stale Marti prune
Moves core/proto to PR #927 head (c834f6b), which adds LockdownAuth.disable
and LockdownStatus.State.DISABLED on top of develop. That tree has no
meshtastic.Marti message, so the Marti prune left over from the master merge
was unused and broke generateCommonMainProtos; remove it.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-28 16:30:27 -04:00
github-actions[bot] 19d2860c58 docs: update CHANGELOG.md (#5648) 2026-05-28 15:21:06 -05:00
James Rich ccd7fcd45b fix(ci): install JetBrains JDK 21 for lint-check job (#5649)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-28 15:20:05 -05:00
renovate[bot] 2e7100ca8e chore(deps): update com.google.firebase:firebase-bom to v34.14.0 (#5647) 2026-05-28 15:04:31 -05:00
James Rich f10f36580d fix(ci): pre-install JetBrains JDK 21 for Compose Desktop builds (#5646)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-28 15:03:15 -05:00
github-actions[bot] 89ac12e470 docs: update CHANGELOG.md (#5645) 2026-05-28 14:37:17 -05:00
James Rich 1d221e2dde fix(ble): stop BLE scan on background and downgrade connection priority (#5644)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-28 19:16:19 +00:00
niccellular 2f6c8288c4 Merge remote-tracking branch 'origin/main' into features/lockdown-v2
# Conflicts:
#	.specify/feature.json
#	AGENTS.md
#	core/proto/src/main/proto
#	feature/settings/src/commonMain/kotlin/org/meshtastic/feature/settings/radio/component/SecurityConfigScreen.kt
2026-05-28 15:13:33 -04:00
github-actions[bot] 672b77b4e1 docs: update CHANGELOG.md (#5643) 2026-05-28 13:14:06 -05:00
renovate[bot] bfece155fb chore(deps): update takpacket.sdk to v0.3.3 (#5642) 2026-05-28 13:09:04 -05:00
github-actions[bot] 1c36330615 docs: update CHANGELOG.md (#5641) 2026-05-28 12:45:18 -05:00
Ben Meadors a5e6894fe8 Enhance TAKTALK support with message and room handling, update SDK to v0.3.2 (#5634)
Co-authored-by: James Rich <james.a.rich@gmail.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-28 17:33:16 +00:00
Austin 321b73e726 repo: Add Meshtastic Desktop icon SVGs (#5623)
Co-authored-by: James Rich <james.a.rich@gmail.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-28 12:34:14 -05:00
Copilot a5d176d4d5 docs: add settings validation reference (#5218)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com>
2026-05-28 12:32:21 -05:00
github-actions[bot] e65ef1030e docs: update CHANGELOG.md (#5639) 2026-05-28 11:34:30 -05:00
renovate[bot] 73a2d9f624 chore(deps): update plugin org.meshtastic.flatpak.sources.settings to v0.1.2 (#5637) 2026-05-28 11:33:21 -05:00
James Rich d125d955f2 ci(changelog): exclude changelog commits and fix contributor duplication (#5638)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-28 10:56:56 -05:00
github-actions[bot] cf0c246433 docs: update CHANGELOG.md (#5620) 2026-05-28 10:49:02 -05:00
James Rich d892f43e00 fix(database): stabilize flaky DatabaseManagerWithDbRetryTest (#5635)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-28 10:44:59 -05:00
James Rich 3fe21e1736 docs(governance): add agent behavior and cost efficiency rules (#5636)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-28 10:44:16 -05:00
renovate[bot] de3d65a10a chore(deps): update takpacket.sdk to v0.3.2 (#5632)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-28 04:19:15 -07:00
James Rich a79e30e698 chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#5631)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2026-05-28 03:42:49 -07:00
renovate[bot] 19ea164f93 chore(deps): update core/proto/src/main/proto digest to e3c8af5 (#5629)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-28 02:42:34 +00:00
renovate[bot] 1a7b343924 chore(deps): update gradle/actions action to v6 (#5630) 2026-05-27 21:23:13 -05:00