Limits are now account-tied rather than task-tied

This commit is contained in:
alejo committed 2026-10-24 09:13:03 -03:00
1 parent 315a2102a7
commit 0af468f47c
9 files changed
+235 -14

No files matched your search

+12 -3
View File
@@ -21,9 +21,9 @@ installed; otherwise CMake downloads the amalgamation (needs network once).
acc add <name> tsk add <name> [acc] [status]
acc del <name> tsk del <name>
acc rename <name> <new> tsk rename <name> <new>
acc ls tsk reacc <name> <new|->
tsk restat <name> <new>
tsk notes <name> (opens your editor)
acc wait <name> <time> tsk reacc <name> <new|->
acc unwait <name> tsk restat <name> <new>
acc ls tsk notes <name> (opens your editor)
tsk ls
disp tsk (hide|show)
@@ -82,6 +82,15 @@ goes back to `$VISUAL` / `$EDITOR` / nano / vim / vi. The choice is stored in
Done tasks (`-` if it has none). Rows are sorted most free first: Free, Taken, Busy;
within Taken and Busy fewer tasks first, ties by name (see `levelOf` in `Display.cpp` and
`StatusUtil::isBusy` / `isTaken` to change the rules).
* Waits belong to the account: `acc wait <name> <time>` (or `tsk restat <task> wait
<time>`, which sets its account's wait). Until the time the account's Prompt
and Testing tasks show `Wait HH:MM`; after it they show `Limit reset`, until
you run `acc unwait <name>`, which also clears a stale one. Uploading, Frozen
and Done tasks are not affected, and the tasks keep their own stored status
underneath. A wait that no task shows (no tasks, or only Done / Frozen /
Uploading ones) is listed in the account row as `(wait HH:MM)` or
`(limit reset)` and keeps the account Busy. Tasks without an account keep
their own wait. Old databases with per-task waits are converted on load.
* Deleting an account leaves its tasks unassigned (`-`).
* Names are case-insensitive; the original spelling is kept.
* Notes live in the database (SQLite TEXT, binary-safe, SQLite's default limit is ~1 GB). The task table shows `-` when a task has no notes, otherwise the number of lines (e.g. `3 lines`); open them with `tsk notes <name>`.