todo: one file per item, grouped by theme, with a generated index
TODO.md had reached 1050 lines and 72 open items across 28 sections, read mostly on a phone. It is now a directory: todo/<theme>/<item>.md, one card per file, with frontmatter carrying id, status, created date and order, and the prose body copied across verbatim. TODO.md becomes a generated index (bun run todo:index). Dates: where an item's prose stated one it is used; otherwise its old section's; otherwise 2026-08-20, floored at the day before the split rather than invented. date_source records which. Shaped for a two-way Kanban board, filed as todo/tooling — a card is a file, id is the identity, frontmatter is the machine's half and the body is the owner's. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
---
|
||||
theme: transmission
|
||||
heading: "Transmission"
|
||||
kind: theme
|
||||
---
|
||||
|
||||
Phase 1 (parity with `_references/transmission-web`) shipped 2026-07-30: the `officer-transmission`
|
||||
sidecar plus `/transmission` (torrents / stats / settings). Everything below is **phase 2** — none of
|
||||
it exists in the reference app, so none of it was in scope for parity.
|
||||
|
||||
### Probably needed regardless
|
||||
|
||||
### Ideas, unprioritised
|
||||
@@ -0,0 +1,15 @@
|
||||
---
|
||||
id: transmission/container-host-path-mapping
|
||||
title: "Container→host path mapping"
|
||||
theme: transmission
|
||||
status: open
|
||||
created: 2026-08-20
|
||||
date_source: assumed
|
||||
order: 4
|
||||
---
|
||||
|
||||
**Container→host path mapping.** The daemon reports its own namespace (`/downloads/complete`),
|
||||
which is not a path on this host. A mapping table (`/downloads` → `~/hdds/08_TB_01/Torrents`,
|
||||
`/downloadsTV` → `14_TB_02/Torrents`) would make locations clickable through to `/files` and
|
||||
make "Set location" offer real destinations. Deliberately dropped from phase 1: the reference
|
||||
app has no such feature, so it would have been config nothing read.
|
||||
@@ -0,0 +1,13 @@
|
||||
---
|
||||
id: transmission/cross-surface-links
|
||||
title: "Cross-surface links"
|
||||
theme: transmission
|
||||
status: open
|
||||
created: 2026-08-20
|
||||
date_source: assumed
|
||||
order: 6
|
||||
---
|
||||
|
||||
**Cross-surface links.** Soulseek and `download-media` both land files in the same library;
|
||||
Transmission is the third door to it. Worth a think about whether they should know about each
|
||||
other at all.
|
||||
@@ -0,0 +1,13 @@
|
||||
---
|
||||
id: transmission/files-tab-on-huge-torrents
|
||||
title: "Files tab on huge torrents"
|
||||
theme: transmission
|
||||
status: open
|
||||
created: 2026-08-20
|
||||
date_source: assumed
|
||||
order: 3
|
||||
---
|
||||
|
||||
**Files tab on huge torrents.** `detail/FilesTab.tsx` builds the whole tree and renders every
|
||||
node — no virtualisation. Fine at 14 files; unknown at a few thousand. If it stalls, the fix is
|
||||
`useVirtualizer` over a flattened visible-node list, the same shape as `TorrentTable`.
|
||||
@@ -0,0 +1,13 @@
|
||||
---
|
||||
id: transmission/push-instead-of-poll
|
||||
title: "Push instead of poll"
|
||||
theme: transmission
|
||||
status: open
|
||||
created: 2026-08-20
|
||||
date_source: assumed
|
||||
order: 5
|
||||
---
|
||||
|
||||
**Push instead of poll.** Transmission RPC has no push channel, so `useTransmissionData` polls
|
||||
every 5s. The sidecar could poll once and fan out over a WebSocket, which is both cheaper and
|
||||
what every other live surface in the platform already does.
|
||||
@@ -0,0 +1,12 @@
|
||||
---
|
||||
id: transmission/resizable-detail-pane
|
||||
title: "Resizable detail pane"
|
||||
theme: transmission
|
||||
status: open
|
||||
created: 2026-08-20
|
||||
date_source: assumed
|
||||
order: 1
|
||||
---
|
||||
|
||||
**Resizable detail pane.** `TorrentsView` pins it at `DETAIL_HEIGHT = '45%'`, which is a guess.
|
||||
Either a drag handle or a persisted height in `useLocalStorageState`, alongside the column set.
|
||||
@@ -0,0 +1,12 @@
|
||||
---
|
||||
id: transmission/revisit-defaultvisiblecolumns
|
||||
title: "Revisit `DEFAULT_VISIBLE_COLUMNS`"
|
||||
theme: transmission
|
||||
status: open
|
||||
created: 2026-08-20
|
||||
date_source: assumed
|
||||
order: 2
|
||||
---
|
||||
|
||||
**Revisit `DEFAULT_VISIBLE_COLUMNS`.** Eleven of thirty, chosen before ever seeing the table
|
||||
rendered against the real 43-torrent library. Likely wrong in both directions.
|
||||
Reference in New Issue
Block a user