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
..
20260930094729362-studysets
chore: Halkyon Learn moves into apps/learn
2026-10-22 18:11:02 +02:00
20260930122235111-cards
chore: Halkyon Learn moves into apps/learn
2026-10-22 18:11:02 +02:00
20260930145136285-reviews
chore: Halkyon Learn moves into apps/learn
2026-10-22 18:11:02 +02:00
20261001064926911-tree-tags-assets
chore: Halkyon Learn moves into apps/learn
2026-10-22 18:11:02 +02:00
20261002191122122-notes
chore: Halkyon Learn moves into apps/learn
2026-10-22 18:11:02 +02:00
20261002211346701-learning-paths
chore: Halkyon Learn moves into apps/learn
2026-10-22 18:11:02 +02:00
20261003110855698-pdf-sources
chore: Halkyon Learn moves into apps/learn
2026-10-22 18:11:02 +02:00
20261007205440868-card-buried-at
chore: Halkyon Learn moves into apps/learn
2026-10-22 18:11:02 +02:00
20261008165051407-pdf-position
chore: Halkyon Learn moves into apps/learn
2026-10-22 18:11:02 +02:00
20261009224606274-feedback
chore: Halkyon Learn moves into apps/learn
2026-10-22 18:11:02 +02:00
20261012162411835-studyset-deleted-at
chore: Halkyon Learn moves into apps/learn
2026-10-22 18:11:02 +02:00
20261019121406578-halkyon-base
chore: Halkyon Learn moves into apps/learn
2026-10-22 18:11:02 +02:00
20261019201023295-profiles-in-halkyon-base
refactor(profile): handles and profiles move into halkyon_base
2026-10-22 18:11:07 +02:00
20261019204112282-deletion-notices
feat(accounts): one account across an instance's services (ADR 0016)
2026-10-22 18:11:07 +02:00
20261020111943300-passwords
feat(auth): Learn's and Todo's servers take password sign-in
2026-10-22 18:11:11 +02:00
20261020125117584-sessions-ended
feat(auth): change the password and the recovery phrase while signed in
2026-10-23 14:12:40 +02:00
20261020185750538-recovery-proof-key
fix(auth)!: the recovery phrase is proved by a key of its own
2026-10-23 14:12:43 +02:00
20261020194228286-second-factor-waits
fix(auth): codes wait after ten wrong in a row, and the owner is told
2026-10-23 14:12:44 +02:00
20261020204619104-session-code-tries
fix(auth): a session's wrong codes end the session, not the account's codes
2026-10-23 14:12:47 +02:00
20261020211224692-email-code-purpose
fix(auth): a code by mail serves only what it was asked for
2026-10-23 14:12:48 +02:00
20261021100422048-session-ended-warning
feat(auth): a session ended for its wrong proofs warns its owner
2026-10-23 14:12:51 +02:00
20261021110159867-second-factor-paths
fix(auth): codes after the recovery phrase count apart from the password's
2026-10-23 14:12:52 +02:00
20261021134803749-reset-hold-outs
fix(auth): a hold-out moves a reset on only by its own time, and a reset lives 30 days at most
2026-10-23 14:12:59 +02:00
20261021184601197-private-studysets
feat(privacy): the instance's side of private studysets (ADR 0019)
2026-10-23 14:13:08 +02:00
20261023181810112-oidc-module
refactor(base): SimpleLogin's forwarding page on the OpenID Connect module (ADR 0023)
2026-10-24 09:17:47 +02:00
20261023192913178-simplelogin-keys
feat(base): SimpleLogin accounts' keys without SRP, signing up in one call (ADR 0020, step 3)
2026-10-24 09:17:48 +02:00
20261025135744595-waiting-accounts
feat(base)!: sign-ups as the operator says, waiting accounts, operators (ADR 0021, step 1)
2026-10-26 07:17:05 +01:00
20261025165102861-assistants
feat(base,learn,todo): the operator's assistants, and the instance's privacy page (ADR 0021, step 2)
2026-10-26 07:17:06 +01:00
20261025184004860-assistant-conversations
feat(learn): conversations with assistants, kept sealed (ADR 0021, step 3)
2026-10-26 07:17:08 +01:00
20261026140329810-assistant-budgets
feat(base)!: one budget per person for all their assistants, the effort each takes, the operator's lists by page
2026-10-26 16:21:53 +01:00
20261110225336783-file-store-in-halkyon-base
refactor(base,learn): people's files kept by halkyon_base
2026-11-11 01:19:28 +01:00
20261110225358224-file-store-in-halkyon-base
refactor(base,learn): people's files kept by halkyon_base
2026-11-11 01:19:28 +01:00
20261111091720823-shared-spaces
feat(base,learn): spaces people share, kept by halkyon_base
2026-11-11 10:54:19 +01:00
20261111100124819-shared-space-keys
feat(base,app,keys): keys of shared spaces, sealed to each member
2026-11-11 11:35:42 +01:00
20261111110923694-own-rows-by-id
refactor(learn): own rows name shared content by its ID alone
2026-11-11 12:40:23 +01:00
migration_registry.dart
refactor(learn): own rows name shared content by its ID alone
2026-11-11 12:40:23 +01:00