James Rich
b7d6b9c165
test(a11y): prove all status colors reach AA on every bubble shade
...
Extends ColorContrastTest to sweep all four quality colors
(green/yellow/orange/red) across the full background-lightness range,
asserting WCAG AA (4.5:1) holds after ensureContrastOn — so the bubble
fix is verified for every status color and every node tint, not just
green on the one sample bubble.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-27 14:52:29 -05:00
James Rich
9e887ed92a
fix(a11y): keep bubble metadata green legible on colored bubbles
...
Review feedback (design#113): the green SNR/RSSI text and the signed
shield sit on a per-node-tinted message bubble, where the shared
"Status Good" green has poor contrast (worst in light mode) — an
accessibility/readability problem. The black message text is fine
because it derives from the bubble's content color; the green metadata
did not.
Fix is scoped to the bubble — the shared StatusGreen token is used in
~15 components, almost all on the neutral theme surface where it's fine,
so changing the token globally would be the wrong lever. Instead:
- Add ensureContrastOn(background): nudges a color toward black/white
just enough to meet WCAG AA against a given background, preserving hue
(picks the higher-contrast direction, so a mid-tone bubble darkens the
green rather than washing it to white). Unit-tested.
- Snr/Rssi/SnrAndRssi gain an optional `background` param (default null =
unchanged everywhere else — no blast radius).
- MessageItem passes the composited bubble background so SNR, RSSI, and
the signed shield all stay legible; shield unified onto the same
contrast-adjusted StatusGreen.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-27 14:37:35 -05:00
Jeremiah K
1303f624ee
fix(ble): Fail bonding promptly when polled state returns none ( #5982 )
2026-06-27 19:16:31 +00:00
James Rich
e9707ec201
fix(security): make XEdDSA signing shield green & prominent ( #5980 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-27 11:51:49 -05:00
github-actions[bot]
a4580b0119
docs: update CHANGELOG.md ( #5979 )
v2.8.0-internal.9
2026-06-27 08:01:45 -05:00
James Rich
a386e1d84d
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs, Baseline) ( #5978 )
2026-06-27 07:44:55 -05:00
github-actions[bot]
0480056f2b
docs: update CHANGELOG.md ( #5977 )
2026-06-27 07:41:19 -05:00
renovate[bot]
b8fe312035
chore(deps): update vico to v3.3.0-next.1 ( #5975 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-27 12:32:39 +00:00
James Rich
5a035ac1f1
feat(security): surface XEdDSA packet signing in node & messaging UI ( #5976 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-27 12:32:21 +00:00
github-actions[bot]
0cf90286ae
docs: update CHANGELOG.md ( #5970 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
v2.8.0-internal.8
2026-06-27 05:38:53 -05:00
James Rich
630a4351eb
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs, Baseline) ( #5974 )
2026-06-27 05:38:18 -05:00
Jeremiah K
86580db6cf
fix(ble): Stop transport connect after failed bonding ( #5973 )
2026-06-27 00:21:08 +00:00
James Rich
8e99d1b91b
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs, Baseline) ( #5972 )
2026-06-26 13:59:07 -05:00
Jeremiah K
5c83333f94
fix(ble): Avoid duplicate bonding retries after pairing failure ( #5969 )
2026-06-26 18:34:59 +00:00
renovate[bot]
1d11adb75e
chore(deps): update gradle to v9.6.1 ( #5971 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-26 16:58:28 +00:00
Jeremiah K
fe019d3fa5
fix(ble): Bound Android bonding wait ( #5967 )
2026-06-26 16:08:17 +00:00
github-actions[bot]
8509214743
docs: update CHANGELOG.md ( #5965 )
2026-06-26 10:00:37 -05:00
github-actions[bot]
e4f609d6f5
docs: update CHANGELOG.md ( #5962 )
v2.8.0-internal.7
2026-06-26 08:31:18 -05:00
James Rich
b80862d36e
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs, Baseline) ( #5964 )
2026-06-26 08:30:58 -05:00
James Rich
a511fcf5ec
fix(docs): preserve #anchor when rewriting sibling links for Docusaurus ( #5963 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-26 07:30:08 -05:00
James Rich
d8e0c1dd50
docs: veracity pass, screenshot enrichment & screenshot-pipeline split ( #5961 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-26 11:58:18 +00:00
James Rich
b86b44e629
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs, Baseline) ( #5958 )
2026-06-26 11:12:57 +00:00
Jeremiah K
780bec03f9
fix(ble): Restore bounded bonded reconnect fallback ( #5960 )
2026-06-26 11:12:10 +00:00
renovate[bot]
f60525ab22
chore(deps): update kotlin-toolchain to v3.4.2 ( #5959 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-26 06:11:17 -05:00
github-actions[bot]
307d4eba3d
docs: update CHANGELOG.md ( #5957 )
2026-06-25 14:34:00 -05:00
James Rich
89f41dea53
ci: fix Android docs sync (remove stray workflow, prune stale pages) ( #5955 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-25 18:29:40 +00:00
Jeremiah K
33a4ca6731
refactor(connections): Show one active transport pane ( #5956 )
2026-06-25 18:27:27 +00:00
Jeremiah K
725133ec4a
refactor(ble): Make Kable connect fallback explicitly bounded ( #5944 )
2026-06-25 18:05:17 +00:00
renovate[bot]
df21efb986
chore(deps): update aboutlibraries to v15.0.2 ( #5953 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-25 18:03:21 +00:00
renovate[bot]
3d981895fe
chore(deps): update org.meshtastic:protobufs to v2.7.26-21879a9-snapshot ( #5938 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-25 18:02:59 +00:00
renovate[bot]
4d7157da90
chore(deps): update com.google.android.gms:play-services-location to v21.4.0 ( #5954 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-25 18:02:36 +00:00
James Rich
aa4d040f4c
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs, Baseline) ( #5952 )
2026-06-25 13:05:35 -05:00
github-actions[bot]
620ae001f0
docs: update CHANGELOG.md ( #5950 )
2026-06-25 06:59:27 -05:00
renovate[bot]
fad8e5f0e3
chore(deps): update ktor to v3.5.1 ( #5951 )
2026-06-25 06:58:29 -05:00
renovate[bot]
cb8fbd7392
chore(deps): update aboutlibraries to v15.0.1 ( #5949 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-25 11:49:16 +00:00
Jeremiah K
09cde67e51
fix(usb): Surface permission denial as permanent disconnect ( #5943 )
2026-06-25 10:36:17 +00:00
James Rich
ab07347e5a
refactor: drop two over-engineered seams (enum + stdlib Base64) ( #5945 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-25 10:34:53 +00:00
James Rich
40627fb02a
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs, Baseline) ( #5948 )
2026-06-25 05:34:28 -05:00
github-actions[bot]
e53dbce9b3
docs: update CHANGELOG.md ( #5931 )
v2.8.0-internal.6
v2.8.0-closed.1
2026-06-24 18:49:08 -05:00
James Rich
c98a08841b
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs, Baseline) ( #5937 )
2026-06-24 18:46:39 -05:00
James Rich
fa223bfc08
chore(deps): re-pin protobufs to v-less snapshot 2.7.26-4b8d665-SNAPSHOT, drop resolution override ( #5942 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-24 18:27:38 -05:00
James Rich
d81a91a9da
feat(lora): gate region→preset map + TINY presets on firmware capability ( #5941 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-24 22:26:58 +00:00
Jeremiah K
e1e40c7b06
refactor(connections): Derive DeviceType from InterfaceId ( #5935 )
2026-06-24 21:53:29 +00:00
renovate[bot]
eced830402
chore(deps): update androidx.security:security-crypto to v1.1.0 ( #5940 )
2026-06-24 15:28:51 -05:00
James Rich
df67b3e094
feat(lockdown): firmware lockdown mode (provision / unlock / lock-now) ( #5939 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-06-24 20:18:13 +00:00
James Rich
8fb2001b52
feat(lora): consume region→preset compatibility map + TINY presets (protobufs #951 ) ( #5834 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-24 18:46:57 +00:00
James Rich
637e3de294
docs: add Obtainium test-build install guide ( #5936 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-24 13:46:34 -05:00
Jeremiah K
0180661bdf
fix(usb): Suppress expected serial close warnings ( #5932 )
2026-06-24 18:10:32 +00:00
Jeremiah K
45a27ab5d9
fix(data): Persist TAK module config ( #5933 )
2026-06-24 17:04:55 +00:00
James Rich
f1a7982a4d
refactor(core:ui): drop redundant SinglePaneSceneStrategy from NavDisplay ( #5934 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-24 16:00:17 +00:00