halkyon/apps/learn/halkyon_learn_server/test/integration
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Tizian 「ティツィアーン」 82c777b1a5
feat(base,learn): suggest changes within a shared studyset
ADR 0044's step 6b (D44, D46 to D48): a Viewer, and an agent, suggest
changes within a shared studyset, which its Owner and Editors accept or
decline.

A suggestion or report is written as Explore's are, in its writer's own
synced space, with kinds of its own (space-suggestion, space-report)
and the space's id in feedback_thread's publicationId, so no synced
table changes and older apps, skipping kinds they don't know, keep
syncing. Where the studyset is private it is sealed with its key, bound
to the space; a reply to it is sealed for its thread.

Learn's server gathers a space's threads for its members alone
(feedback.threadsInSpace, NotFound for anyone else): only threads and
replies by members now, decisions only from rows in the space itself,
where the engine lets its Owner and Editors alone write; sealed
payloads pass in base64 with their key and nonce. The inbox adds the
threads its caller decides on or wrote. The module tells a host a
person's spaces and each space's members (sharedSpacesOf,
membersOfSpaces). No migration: no table changes.

In the app, a Viewer's card and note offer Suggest a change: the fields
write into the suggestion alone, sent with a message. A shared
studyset's menu lists its Suggestions, where its Owner and Editors
accept a change as a revision, or a new card or note into the
studyset, and decide in the space. A suggestion naming a file that
isn't the studyset's, or bringing files of its own, isn't taken.

Whats-New: In a studyset shared with you as a viewer, suggest a change to a card or note; its owner and editors find your suggestions under Suggestions in its menu and accept or decline them.
Whats-New-De: In einem Lernset, das du nur ansehen darfst, schlägst du Änderungen an Karteikarten und Notizen vor; Besitzer:in und Bearbeiter:innen finden sie im Menü unter „Vorschläge“ und nehmen sie an oder lehnen sie ab.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
2026-11-11 20:43:55 +01:00
..
asset refactor(base,learn): people's files kept by halkyon_base 2026-11-11 01:19:28 +01:00
auth refactor(base,learn): people's files kept by halkyon_base 2026-11-11 01:19:28 +01:00
dictionary chore: Halkyon Learn moves into apps/learn 2026-10-22 18:11:02 +02:00
discussion refactor(profile): handles and profiles move into halkyon_base 2026-10-22 18:11:07 +02:00
explore feat(learn): Explore by what a licence allows, a skeleton while the library loads, and an assistant's agreement per provider (ADR 0005, rule 12; ADR 0021, D66) 2026-11-02 05:19:18 +01:00
feedback feat(base,learn): suggest changes within a shared studyset 2026-11-11 20:43:55 +01:00
grammar feat(learn): LanguageTool as a sidecar, reached through the server 2026-10-26 07:17:10 +01:00
instance refactor(profile): handles and profiles move into halkyon_base 2026-10-22 18:11:07 +02:00
publish feat(learn): confirm the notes and files a release takes 2026-11-11 10:06:38 +01:00
shared_space refactor(learn): own rows name shared content by its ID alone 2026-11-11 12:40:23 +01:00
support refactor(learn): own rows name shared content by its ID alone 2026-11-11 12:40:23 +01:00
test_tools feat(base,learn): suggest changes within a shared studyset 2026-11-11 20:43:55 +01:00