diff options
| author | Danilo M. <danix@danix.xyz> | 2026-08-08 10:11:51 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-08-10 08:22:55 +0200 |
| commit | 380a59ab01ef578292e772c9e308f37124ab7e30 (patch) | |
| tree | 36fe6d0cf17d5ad87bfb8a7bc2e6ebcc4322fa97 /docs/superpowers/plans/2026-08-08-item-20-message-rows.md | |
| parent | f72dba9f6c463c6823d85701e51d8be38dd22a62 (diff) | |
| download | qtmaildir-380a59ab01ef578292e772c9e308f37124ab7e30.tar.gz qtmaildir-380a59ab01ef578292e772c9e308f37124ab7e30.zip | |
docs(item-20): specify message rows in the thread list and plan the work
The item sat as 'open, unspecified' since 2026-08-04, recording only that the
user's mental model differed from what was built. Described now from three
screenshots plus four decisions: the left pane gains message rows, the root row
IS the thread's first message, replies indent by true reply depth, and action
scope follows the selected row kind.
No confirmation dialog, per this project's standing rule. The hazard the design
introduces is ambiguity rather than destruction, since deleted is a tag and
every mutation is invertible, so the scope is named in the status bar before and
after the action instead.
Sized L, the largest item in the backlog and the first to warrant a branch.
The plan records four API facts verified against the installed headers, each
contradicting the obvious approach: replies are unreachable from a query walk,
thread-derived messages must not be RAII-wrapped, QTreeView lacks
isRowSelected(int), and a tree numbers rows per parent.
Diffstat (limited to 'docs/superpowers/plans/2026-08-08-item-20-message-rows.md')
| -rw-r--r-- | docs/superpowers/plans/2026-08-08-item-20-message-rows.md | 9 |
1 files changed, 0 insertions, 9 deletions
diff --git a/docs/superpowers/plans/2026-08-08-item-20-message-rows.md b/docs/superpowers/plans/2026-08-08-item-20-message-rows.md index 5935777..f4882c7 100644 --- a/docs/superpowers/plans/2026-08-08-item-20-message-rows.md +++ b/docs/superpowers/plans/2026-08-08-item-20-message-rows.md @@ -1,14 +1,5 @@ # Item 20: Message Rows in the Thread List — Implementation Plan -> **EXECUTED AND PARKED, 2026-08-08. Do not run this plan again.** -> Every task here was implemented on the branch `item-20-message-rows`, which is -> pushed to both remotes and **not merged**. master has these documents and none -> of that code. The user's verdict on the finished result was that the table -> layout does not fit the use, and item 53 in -> `2026-08-03-post-0.1.0-usability.md` carries the diagnosis. This document is -> kept for the API facts it verified and the reasoning it records, not as work -> to pick up. Read item 53 first. - > **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking. **Goal:** Turn the flat thread list into a tree where a thread's root row is its first message, expanding reveals the replies indented by reply depth, and selecting a reply opens that single message in the reading pane. |
