feat(todo): comments on a task (ADR 0033, D36)

Plain text with links, written, edited and deleted in the task's sheet,
counted on its row. They are sealed in `task_comment`, the task they belong
to with them, and go with their task.

Whats-New: Comments: write on a task, edit or delete what you wrote, and open its links.
Whats-New-De: Kommentare: Schreibe zu einer Aufgabe, bearbeite oder lösche es und öffne Links darin.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
Tizian 「ティツィアーン」 2026-11-06 19:53:28 +01:00
commit 016b74ff74
Signed by: raisondetredev
GPG key ID: 07F6FCF405488B64

View file

@ -53,7 +53,7 @@ void main() {
test(
'deleting a person deletes their space with every key, project, '
"section, task, label, filter and settings in it, and nobody else's",
"section, task, label, filter, comment and settings in it, and nobody else's",
() async {
for (final person in [alice, bob]) {
await _projectOf(session, person);
@ -107,6 +107,7 @@ const _tables = [
'task',
'label',
'saved_filter',
'task_comment',
'todo_settings',
];
@ -152,4 +153,9 @@ Future<void> _projectOf(Session session, UuidValue person) =>
TodoSettings(keyId: 'todo1.0.key', payload: sealed, nonce: sealed),
transaction: transaction,
);
await TaskComment.db.insertRow(
session,
TaskComment(keyId: 'todo1.0.key', payload: sealed, nonce: sealed),
transaction: transaction,
);
});