Step 2: move the old tracker data into the new app
opened by Architect · assigned to Architect
opened · updated
All shows, seasons, episodes, people and your watch history move from the old MongoDB into the new app's database. Test: after the deploy, the counts in the app's STATUS match the old database; nothing is shown yet (that is a later step). Details:
- Source: /media/STORAGE/projects/old-tracker/mongo-export/*.jsonl (complete, see README-RECONSTRUCTED.md there).
- Every record gets a NEW mpackdb id. Build the map old id → new id, then re-point EVERY reference: Show.seasons/genres/cast, Season.show/episodes, Episode.show/season, Person.shows, Follow.oid/userId, Watch.oid (episode or season, sometimes a plain string)/userId.
- The only old user is the creator → ident short id az5b2; the old password hash is not taken over.
- A one-off tool in the app (tools/, run with the app's own binary), idempotent, prints counts; proof: counts equal the export, zero dangling references, one show checked end to end (show → seasons → episodes → watches).
- Starts after step 1 is live (it builds on step 1's database setup). No deploy: the architect runs it on Byrodin.
Children
all children done (1)
done antcolony #36Question (tracker.worldapi.org#2): the work failed its check 2 times — how should it go on?
History
Architect opened the ticket Architect changed the state pending Waits for step 1 (https://tickets.worldapi.org/projects/tracker.worldapi.org/1) to be live; the architect opens it then.
Architect assigned the ticket to Architect Architect changed the state open Step 1 is live (https://tickets.worldapi.org/projects/tracker.worldapi.org/1) — step 2 can start.
AntColonyScheduler changed the state progress A worker started on this ticket.
colony-lease: s-20260927T1029-f57b0f · host Loreana · started · ms 1790512159245
AntColonyScheduler commented The result did not hold up when it was checked — back to open for another try.
- Not true: find /media/STORAGE/projects/tracker.worldapi.org -maxdepth 4 | grep -i storage → (empt…
colony-verdict: s-20260927T1029-f57b0f · fail · 1 of 2
AntColonyScheduler changed the state open Back to open: the check failed (1 of 2 tries).
AntColonyScheduler changed the state progress A worker started on this ticket.
colony-lease: s-20260927T1035-ddc0b6 · host Loreana · started · ms 1790512503953
AntColonyScheduler commented The result failed its check 2 times — on hold until you answer antcolony #36.
- Not true: step 1 left no mpackdb table / storage/ yet, so step 2 starts clean once data is reachable
colony-verdict: s-20260927T1035-ddc0b6 · fail · 2 of 2
AntColonyScheduler changed the state pending On hold: the check failed 2 times — waiting for your answer.
Architect changed the state open The old data was not visible to the worker — fixed: the worker now sees /media/STORAGE/projects/old-tracker (read only). Checked in the worker's box: all 231,584 episodes readable.
AntColonyScheduler changed the state progress A worker started on this ticket.
colony-lease: s-20260927T1212-a582d7 · host Loreana · started · ms 1790518325204
AntColonyScheduler changed the state open Back to open: the worker stopped without a usable result (it ran out of steps) — the next worker tries again.
colony-run: s-20260927T1212-a582d7 · host Loreana · no report
AntColonyScheduler changed the state progress A worker started on this ticket.
colony-lease: s-20260927T1247-cf9316 · host Loreana · started · ms 1790520425204
AntColonyScheduler commented Built — goes live with the next deploy.
colony-report: s-20260927T1247-cf9316 · sha256 0bffad14f3c3 · controller pass · ready to deploy
AntColonyScheduler commented Now live on tracker.worldapi.org — The old tracker's shows, seasons, episodes, people and watch history are now in the app's database.
Test:
- Open https://tracker.worldapi.org, sign in — homepage stays empty, as in step 1.
- STATUS.md counts match the old database (9453 shows, 231584 episodes).
- Problems found elsewhere: hybriel #112, hybriel #113
- Decided: Kept users.db from step 1 — ensureUser() is idempotent by identity, so re-running migration leaves it untouched; Moved the old buggy migration's tables to .scratch first; deleted that back…
colony-deployed: s-20260927T1247-cf9316 · sha256 0bffad14f3c3
AntColonyScheduler changed the state review Ready for you to test — see the last comment.
Architect commented Live: the old data is in the live tracker database (run on Byrodin 2026-09-27 15:02, app stopped meanwhile, backup tracker-backup-before-migrate-20260927-1502.tgz). Test: nothing to see yet — the data shows up once a later step builds the pages. Details:
- Counts equal the old database: 27 genres, 15,157 people, 9,453 shows, 6,430 seasons, 231,584 episodes, 128 follows, 11,692 watches; all yours (az5b2), 0 dangling references.
- The old data itself had 36,194 episodes without a season link (and 3 watches without a target) — kept as they were; they can be re-linked by show + season number later.
Reading is open to everyone. To comment or change the state, log in with ident (top right) and choose a display name.