fix(bulk): mode and RST were offered but could not be saved

A bulk-editable field passes through THREE tables: the list the dialog shows,
bulkFieldColumns in app.go, and bulkEditableCols in internal/qso. I added mode,
submode and RST to the first and the third and missed the middle one, so the
dialog offered them and every save came back "unknown field".

Nothing warns about that. Each table is perfectly valid on its own, and the
mismatch only surfaces when an operator picks the one field that falls through
the gap — which is exactly how it was found.

So both directions are pinned now: every mapped field must be writable by the
qso layer, and every writable column must have a field mapping to it. A column
nothing maps to looks supported from the inside and cannot be reached from
outside, which is the same fault wearing the other hat.
This commit is contained in:
2026-08-11 20:39:46 +02:00
parent 1b7f8ec9c1
commit 2a6e09a1d7
3 changed files with 58 additions and 0 deletions
+6
View File
@@ -6162,6 +6162,12 @@ var bulkFieldColumns = map[string]string{
"iota": "iota",
"sig": "sig",
"sig_info": "sig_info",
// The contact itself — repair fields. Setting mode also clears submode, in
// qso.BulkSetField: a submode left over from the old mode contradicts the new.
"mode": "mode",
"submode": "submode",
"rst_sent": "rst_sent",
"rst_rcvd": "rst_rcvd",
// Misc text
"comment": "comment",
"notes": "notes",