diff options
| -rw-r--r-- | docs/manual-verification.md | 31 | ||||
| -rw-r--r-- | docs/superpowers/plans/2026-08-02-qtmaildir-v1.md | 2 | ||||
| -rw-r--r-- | docs/superpowers/specs/2026-08-02-qtmaildir-design.md | 8 |
3 files changed, 21 insertions, 20 deletions
diff --git a/docs/manual-verification.md b/docs/manual-verification.md index 18f4249..80e0af7 100644 --- a/docs/manual-verification.md +++ b/docs/manual-verification.md @@ -158,8 +158,8 @@ document would throw away exactly what the user just asked to see. ## Item 7: PASS, after correcting the query -Verified with `from:nutpantz` against `thread:0000000000008faa` (22 -messages, 2 from that sender): the two matching messages rendered expanded, +Verified with a `from:` query against a 22-message thread in which only 2 +messages came from that sender: the two matching messages rendered expanded, the other twenty collapsed to one-line stubs, and the last message rendered expanded despite not matching, which is the guard that stops a thread rendering as nothing but stubs. @@ -178,7 +178,7 @@ per message, such as `from:`. ## Item 12: PASS -The AtlasMedica message (3 inline `cid:` parts) displayed all three images +A message with 3 inline `cid:` parts displayed all three images with no "Remote content blocked" banner. The absent banner is the stronger half of the result: nothing was denied, so the images came entirely from parts carried inside the message and no request left the machine. @@ -219,7 +219,7 @@ main-frame navigation is refused. ## Item 8: PASS -With the 22-message thread (`thread:0000000000008faa`) open: +With a 22-message thread open: | State | `QtWebEngineProcess` count | |---|---| @@ -265,26 +265,27 @@ where this checklist would earn its keep. Items 19-20 need a `mailsync.sh` to exist on this machine. Item 13 is unreachable with this mailbox: the only two messages found that -share a Content-ID (`95db36262ead...@phpmailer.0`, two AtlasMedica -notifications) sit in separate single-message threads, and the pane renders +share a Content-ID (two notifications from the same automated sender, +generated by the same mailer template) sit in separate single-message +threads, and the pane renders one thread at a time. The behaviour it describes is covered by `test_threadcidmap.cpp::sharedContentIdsDoNotCollide` instead. ## Items 16-18: PASS -Run against three 2023 AtlasMedica notifications, chosen as low-stakes: -already read, single-message, and identifiable afterwards by their -`notify/atlasmedica` tag. Every step went through the same +Run against three 2023 automated notifications, chosen as low-stakes: +already read, single-message, and identifiable afterwards by a tag unique to +that sender. Every step went through the same `applyTagsToThreads` path the GUI uses, with the index inspected before and after. | Step | Result | |---|---| -| Baseline | 3ea6, 3fb0, 4024 all in inbox; 4176 inbox threads, 62 atlasmedica | -| 16: archive 3ea6 | `inbox` gone, other tags intact, message still present; 4175 | -| 17: archive 3fb0 + 4024 together | one `tagsApplied`, 2 message ids from 2 thread ids in a single query; 4173, atlasmedica 59 | -| 18: undo the bulk archive | both restored to their exact original tag sets; 4175, atlasmedica 61 | -| Cleanup | 3ea6 restored by hand; 4176 and 62, identical to baseline | +| Baseline | all three threads in inbox; 4176 inbox threads, 62 tagged | +| 16: archive the first | `inbox` gone, other tags intact, message still present; 4175 | +| 17: archive the other two together | one `tagsApplied`, 2 message ids from 2 thread ids in a single query; 4173, tagged 59 | +| 18: undo the bulk archive | both restored to their exact original tag sets; 4175, tagged 61 | +| Cleanup | the first restored by hand; 4176 and 62, identical to baseline | Two things worth drawing out. Item 17 emitted a single `tagsApplied` with both message ids resolved in one combined query rather than one query per @@ -298,7 +299,7 @@ The mailbox was returned to its exact starting state, verified tag by tag. ## Items 19 and 20: PASS, with a caveat about the log pane -With `command = /home/danix/bin/mailsync.sh` configured, the config now +With the sync command configured, the config now produces no warnings at all, which is what item 1 originally asked for. Item 19: `start()` returned in 0 ms, so the UI is never blocked; a second diff --git a/docs/superpowers/plans/2026-08-02-qtmaildir-v1.md b/docs/superpowers/plans/2026-08-02-qtmaildir-v1.md index a847d8a..1d799c4 100644 --- a/docs/superpowers/plans/2026-08-02-qtmaildir-v1.md +++ b/docs/superpowers/plans/2026-08-02-qtmaildir-v1.md @@ -4354,7 +4354,7 @@ Create `docs/manual-verification.md` and record pass/fail for each: or rejected consistently. `config.cpp` validates existence by splitting the command on `' '` and taking the first field, while `MailSync` splits it with `QProcess::splitCommand`, which honours quoting. For - `command = "/home/danix/my scripts/mailsync.sh"` the two disagree: config + `command = "/home/you/my scripts/mailsync.sh"` the two disagree: config checks a path that does not exist and disables sync, so the failure is safe but the message is misleading. Confirm the behaviour, then decide whether to align config on `splitCommand` or to document the restriction. diff --git a/docs/superpowers/specs/2026-08-02-qtmaildir-design.md b/docs/superpowers/specs/2026-08-02-qtmaildir-design.md index 02c969e..67ba857 100644 --- a/docs/superpowers/specs/2026-08-02-qtmaildir-design.md +++ b/docs/superpowers/specs/2026-08-02-qtmaildir-design.md @@ -200,15 +200,15 @@ identity. ```ini [general] ; optional; omit to use notmuch's own database.path -; notmuch_config = /home/danix/.notmuch-config +; notmuch_config = /home/you/.notmuch-config [sync] -command = /home/danix/bin/mailsync.sh +command = /home/you/bin/mailsync.sh -[account.privateemail-danix] +[account.work] name = Danilo M. address = danix@danix.xyz -maildir = privateemail-danix ; relative to notmuch's database.path +maildir = work-mail ; relative to notmuch's database.path drafts = Drafts [account.gmail] |
