-
ea5b6b2b62
Changelog entries for the MeshCore notice, the dual-licensed generator and the SPDX headers

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-13 13:04:42 -04:00
-
37cb6c7c84
The pull-request template says out loud that opening a PR accepts CONTRIBUTING's terms

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-13 13:04:24 -04:00
-
c9f5a71ce7
Every Python file names its licence with an SPDX identifier

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-13 13:09:18 -04:00
-
f16a7c4738
The shared font generator is offered under GPL-2.0-only too, so the 6x8 script may run it

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-13 12:55:30 -04:00
-
d078e2379f
The XIAO firmware patch carries MeshCore's MIT notice beside it

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-13 12:55:00 -04:00
-
266aca08fb
Preferences are kept in TOML, like every other file a person edits by hand

Jean-Pierre MartineauandClaude Opus 5
2026-09-13 12:45:22 -04:00
-
ec21d03c03
The SPI bridge drives openhop_core, and stands its shims down where the library caught up

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-13 01:29:28 -04:00
-
097d2ef495
Under --mock, devices lists the simulator and scans nothing

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-13 01:16:27 -04:00
-
356ca6a94a
The widgets CLAUDE.md names as THE widgets have public names

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-13 01:13:18 -04:00
-
c974085384
The README holds four screenshot slots, named for what each one shows

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-13 00:58:10 -04:00
-
646a0b7b7c
Picking a console font is its own preview, and a discard puts the saved one back

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-13 00:40:55 -04:00
-
3b67c6813e
The PicoCalc's console font is a preference, and the shell gets its own back

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 23:52:54 -04:00
-
ffd2649a35
Shared logic sits in the layer that reads it, and the CLI answers --version

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 19:19:45 -04:00
-
8b80a88f03
The sdist is the package's source, not the repository's

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 19:02:02 -04:00
-
8d3f5d8ed3
MeshTerm on hardware: one manual for the PicoCalc, the XIAO radio and the SPI bridge

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 19:02:02 -04:00
-
9ebc4bd2be
The device scripts say what they do, and the bring-up no longer needs a deploy key

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 19:02:02 -04:00
-
72fc0665c5
A record's header reads as a sentence, and the bar says only Record

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 13:38:40 -04:00
-
6e84c7fe54
A record's metric heads the page, above the tabs, under its discipline's mark

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 13:22:45 -04:00
-
aae3d3f0fe
A record's tabs are Info, Route and Area, organized like the node page

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 13:13:01 -04:00
-
ea8ae61812
A record is a tabbed page: Stats, then the walk's ground on an Area tab of its own

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 04:00:22 -04:00
-
197af90c8e
A share code is centred as a block, never justified — the bottom finder was skewed

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 03:29:46 -04:00
-
4b605c1da7
The record page reads by its sections, and the ground drawing spends the page's width

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 03:10:01 -04:00
-
b56987b24b
A QR code is white on black, and the whole screen when it is the answer

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 03:05:34 -04:00
-
121f75c2a0
A record's ground is drawn under the stats, each pin labelled with its hash byte

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 02:50:50 -04:00
-
07a566d49d
A trophy case record is a page, not a card floating over the list

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 02:35:52 -04:00
-
6bdfa26160
The trace target picker is a popup, gone before the trace screen opens

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 02:25:17 -04:00
-
83e2aa80ae
The trophy case fills the frame whichever way in

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 02:20:56 -04:00
-
1f34d35d2a
Survey ledger: the base under a popup is the menu

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 02:16:13 -04:00
-
b1dbbe5a5a
A popup with nothing under it floats over the menu, never over an empty frame

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 02:15:39 -04:00
-
13f0c647de
The navigation standard says what a popup is: a question, not a place

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 02:05:49 -04:00
-
a8b69efa73
The repeater admin's node picker is a popup, gone before the admin page opens

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 02:05:21 -04:00
-
222679c5a3
The stepped dialog draws as a popup, not as the frame

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 01:58:38 -04:00
-
930596130f
The TX optimize link is picked in one dialog that turns its page, gone before the sweep

Jean-Pierre MartineauandClaude Fable 5.1
2026-09-12 01:52:37 -04:00
-
e24e41178a
The delay settings round to one decimal, on the repeater admin and device config

Jean-Pierre MartineauandClaude Opus 5
2026-09-12 01:19:30 -04:00
-
09956c764c
MeshTerm 0.3.2
v0.3.2

Jean-Pierre MartineauandClaude Opus 5
2026-09-11 04:29:19 -04:00
-
7afd231bc7
A read-logs skill turns the log into incidents before anyone reasons about it

Jean-Pierre MartineauandClaude Opus 5
2026-09-11 04:29:19 -04:00
-
10f48dbffc
A relay chain opens and closes on the chevron, since its ends are not the route's

Jean-Pierre MartineauandClaude Opus 5
2026-09-11 04:29:19 -04:00
-
e5231687de
The location picker opens at once instead of waiting on the radio for contacts

Jean-Pierre MartineauandClaude Opus 5
2026-09-11 03:58:46 -04:00
-
74eabff25f
A repeater setting its firmware lacks reads n/a, not ?

Jean-Pierre MartineauandClaude Opus 5
2026-09-11 03:42:43 -04:00
-
564ac0e6ac
Both editor pages pick a location on the map above separate coordinate rows

Jean-Pierre MartineauandClaude Opus 5
2026-09-11 03:39:39 -04:00
-
f27492b2e4
Device config carries the device actions and every setting the firmware has

Jean-Pierre MartineauandClaude Opus 5
2026-09-11 03:23:21 -04:00
-
c9325d0c5d
Repeater admin is a full-screen page, not a popup over the node picker

Jean-Pierre MartineauandClaude Opus 5
2026-09-11 02:40:08 -04:00
-
61dc9dc110
Every icon-led list measures its icon column, so no label starts a column early

Jean-Pierre MartineauandClaude Opus 5
2026-09-11 02:02:05 -04:00
-
79efc4b0e0
Repeater admin speaks the firmware's own CLI, every setting of it

Jean-Pierre MartineauandClaude Opus 5
2026-09-11 01:49:51 -04:00
-
0257c53d8e
The repeater admin actions start every label in the same cell

Jean-Pierre MartineauandClaude Opus 5
2026-09-11 01:35:12 -04:00
-
a849556a33
A release with notes should not publish 'No changelog entry' for losing a race
Jean-Pierre Martineau
2026-09-09 02:43:07 -04:00
-
8875a45070
MeshTerm 0.3.1
v0.3.1
Jean-Pierre Martineau
2026-09-09 02:32:47 -04:00
-
d41111bd5f
The missing link refs are cosmetic, and the check now says so
Jean-Pierre Martineau
2026-09-09 02:32:47 -04:00
-
c2fb49a001
Skill: cutting a release, and the two workflows it must never confuse
Jean-Pierre Martineau
2026-09-09 02:23:45 -04:00
-
398a184eed
The splash says bye, and keeps the reader's place when a row goes

Jean-Pierre MartineauandClaude Opus 5
2026-09-09 01:45:19 -04:00
-
4109c73522
A full pack should not rescale the pulse it sits beside

Jean-Pierre MartineauandClaude Opus 5
2026-09-09 01:36:12 -04:00
-
3d3506be4f
A route that has finished does not end on the mark for "there is more"

Jean-Pierre MartineauandClaude Opus 5
2026-09-09 01:36:03 -04:00
-
b2bf305a31
Hide the devices on the splash that are never the one you want

Jean-Pierre MartineauandClaude Opus 5
2026-09-09 01:26:06 -04:00
-
3991c723ab
Two of the seven disciplines wear a one-cell mark

Jean-Pierre MartineauandClaude Opus 5
2026-09-09 01:05:06 -04:00
-
18064c44de
A rename is not a reason to close the page it renamed

Jean-Pierre MartineauandClaude Opus 5
2026-09-09 00:53:47 -04:00
-
d19e2ec712
Channels goes through the shared row builders it was working around

Jean-Pierre MartineauandClaude Opus 5
2026-09-09 00:48:07 -04:00
-
4c01e1da7e
A short list is not a layout, and a free slot is asked before it is used

Jean-Pierre MartineauandClaude Opus 5
2026-09-09 00:41:36 -04:00
-
4ba8da7f03
Channels shows the wait instead of announcing the result

Jean-Pierre MartineauandClaude Opus 5
2026-09-09 00:32:19 -04:00
-
0a0dc977e6
A busy card that is actually there, and actually takes the keys

Jean-Pierre MartineauandClaude Opus 5
2026-09-09 00:23:29 -04:00
-
217625dcf7
The channel manager kept a receipt nobody could read

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 23:50:13 -04:00
-
9341c4c1d9
Twenty-two cells reserved for a name most people spell in five

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 23:34:15 -04:00
-
c008aa5f01
Windows got sixteen million colours, everyone else got 256

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 18:35:32 -04:00
-
4d8c67358c
Release 0.3.0
v0.3.0

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 05:07:51 -04:00
-
b76a93808f
Three more arguments that were reported as the radio's fault

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 05:03:17 -04:00
-
c920f50584
The manual promised awk; now it says which reader it is talking to

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 04:58:13 -04:00
-
360c0c131e
The keystroke raced the screen that reads it

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 04:30:40 -04:00
-
b42b0a473e
Take the flag where it is typed, and stop the heading from lying

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 04:21:54 -04:00
-
2a71284d7d
A bare answer with nothing in it prints nothing, not a dash

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 04:10:02 -04:00
-
8d2a7b8281
--absolute asks for another form of time, not for one fewer fact

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 04:07:27 -04:00
-
de0f60cbe0
Rewrite the CLI standard for the two faces it now has

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 04:02:29 -04:00
-
5215a1b76c
Two things the sweep could not see

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 03:59:26 -04:00
-
e3ae668f4a
Give the person at the prompt back what a redirect never wanted

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 03:56:35 -04:00
-
109fe7645d
Move every command onto the seam, and give the plain face its own premise

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 03:43:00 -04:00
-
1c24f9149d
Let a tool state its answer instead of printing it

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 03:16:57 -04:00
-
59f10f904c
The escape table was a list where it needed to be a category

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 02:52:30 -04:00
-
98c635a62e
Refuse the wrong answer instead of quietly giving it

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 02:31:22 -04:00
-
369e29e44a
Five ways the scripted output lied, and the name that crashed it

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 02:17:41 -04:00
-
4a91845651
A manual for the command line, and two rules it caught us breaking

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 01:17:26 -04:00
-
da05dd402f
Give the CLI its own voice, meant for a pipe rather than an eye

Jean-Pierre MartineauandClaude Opus 5
2026-09-08 00:52:48 -04:00
-
2790159d04
Ask for a window MeshTerm fits in, rather than taking whatever is open
v0.2.8

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 20:28:54 -04:00
-
690807370b
Take them to the better terminal instead of asking permission to
v0.2.7

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 19:42:46 -04:00
-
564e051d1a
The reopened session must not inherit the bundle's own bookkeeping
v0.2.6

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 17:57:10 -04:00
-
a11c43c347
Release 0.2.5
v0.2.5

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 17:43:20 -04:00
-
476294a8db
Say whose font this is and which licence it keeps

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 17:41:55 -04:00
-
7be4b8514b
A sentence the last commit left in two halves

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 17:16:36 -04:00
-
54bbb93233
Offer the terminal, then the font -- in that order

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 17:16:23 -04:00
-
5158268a73
A font we installed ourselves has to be loaded before it can be selected

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 17:00:50 -04:00
-
f06b593a0f
Ship a font the charts can be drawn in, and offer to install it

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 16:56:15 -04:00
-
ea5f644d73
The console that can't draw an emoji says so before we draw one

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 15:47:27 -04:00
-
d062b5b706
The Windows console call that broke the app is ours alone
v0.2.4

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 15:16:26 -04:00
-
056ac3f770
MeshTerm 0.2.3
v0.2.3

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 14:57:24 -04:00
-
3379ea2d44
A crash you can read, on a window that waits

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 14:49:54 -04:00
-
bdc16fc448
The log is a text file that records what went wrong

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 14:42:47 -04:00
-
e2161fd191
Two MeshTerms can share a machine, but not a directory

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 14:31:39 -04:00
-
9b2c5527f8
MeshTerm 0.2.2
v0.2.2

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 13:54:54 -04:00
-
141698678e
The downloadable builds actually have the app in them

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 13:49:37 -04:00
-
8cc1cae213
Say, in the changelog, what happens to it at 0.9.0

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 13:34:00 -04:00
-
2ea8f9fb83
MeshTerm 0.2.1
v0.2.1

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 13:30:11 -04:00
-
eb61c55f22
The Intel Mac leg asks for a runner that still exists

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 12:30:20 -04:00
-
0c12bd4fcf
Somewhere to download a build from

Jean-Pierre MartineauandClaude Opus 5
2026-09-07 12:25:03 -04:00