halkyon/apps/learn/halkyon_learn_server/test/integration/shared_space
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Tizian 「ティツィアーン」 358d983011
refactor(learn): own rows name shared content by its ID alone
ADR 0044, D26. The sync engine links no row of one space to a row of
another: a reference across spaces is blanked, on the device and on the
server alike (found by experiment, 11 Nov 2026). Reviews, card, note and
path tags, PDF readings and path answers are the person's own (D2, D25)
but will name cards, notes, paths, steps and PDFs of spaces they share,
so those six tables keep their columns without the relation. Every
gateway already deletes them as it deletes what they name.

The migration drops the nine foreign keys of those tables and adds the
three to `tag` again, which Serverpod numbers anew; no column or row
changes. The synced tables' hash covers foreign keys, so released apps
stop syncing with a server that has it until they update: deploy it
together with a release of Learn.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
2026-11-11 12:40:23 +01:00
..
own_rows_by_id_test.dart refactor(learn): own rows name shared content by its ID alone 2026-11-11 12:40:23 +01:00
sync_space_grants_test.dart feat(base,learn): spaces people share, kept by halkyon_base 2026-11-11 10:54:19 +01:00